Part Number Hot Search : 
ADP224 03LT1 AMS15FS TC2054 FP5401MB APL3520C ADF4116 RC10S04
Product Description
Full Text Search
 

To Download IDT72P51549 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1 ? 2004 integrated device technology, inc. all rights reserved. product specifications subject to change without notice. dsc-6715/- september 2004 1.8v multi-queue flow-control devices (32 queues) 36 bit wide configuration 589,824 bits 1,179,648 bits 2,359,296 bits 4,718,592 bits idt and the idt logo are trademarks of integrated device technology, inc commercial and industrial temperature ranges advance information idt72p51539 IDT72P51549 idt72p51559 idt72p51569 features ? ? ? ? ? choose from among the following memory density options: idt72p51539 ? ? ? ? ? total available memory = 589,824 bits IDT72P51549 ? ? ? ? ? total available memory = 1,179,648 bits idt72p51559 ? ? ? ? ? total available memory = 2,359,296 bits idt72p51569 ? ? ? ? ? total available memory = 4,718,592 bits ? ? ? ? ? configurable from 1 to 32 queues ? ? ? ? ? default configuration of 32 or 16 symmetrical queues ? ? ? ? ? default multi-queue device configurations ? idt72p51539: 512 x 36 x 32q ? IDT72P51549: 1,024 x 36 x 32q ? idt72p51559: 2,048 x 36 x 32q ? idt72p51569: 4,096 x 36 x 32q ? ? ? ? ? default configuration can be augmented via the queue address bus ? ? ? ? ? number of queues and individual queue sizes may be configured at master reset though serial programming ? ? ? ? ? 200 mhz high speed operation (5ns cycle time) ? ? ? ? ? 3.6ns access time ? ? ? ? ? independent read and write access per queue ? ? ? ? ? user selectable bus matching options: ? x36 in to x36 out ? x18 in to x36 out ? x9 in to x36 out ? x36in to x18out ? x18 in to x18 out ? x9 in to x18 out ? x36in to x9out ? x18 in to x9 out ? x9 in to x9 out ? ? ? ? ? user selectable i/o: 1.5v hstl, 1.8v ehstl, or 2.5v lvttl ? ? ? ? ? 100% bus utilization, read and write on every clock cycle ? ? ? ? ? selectable first word fall through (fwft) or idt standard mode of operation ? ? ? ? ? ability to operate on packet or word boundaries ? ? ? ? ? mark and re-write operation ? ? ? ? ? mark and re-read operation ? ? ? ? ? individual, active queue flags ( or / ef , ir / ff , pae , paf , pr ) ? ? ? ? ? 8 bit parallel flag status on both read and write ports ? ? ? ? ? direct or polled operation of flag status bus ? ? ? ? ? expansion of up to 256 queues and/or 32mb logical configura- tion using up to 8 multi-queue devices in parallel ? ? ? ? ? jtag functionality (boundary scan) ? ? ? ? ? available in a 256-pin pbga, 1mm pitch, 17mm x 17mm ? ? ? ? ? high performance submicron cmos technology ? ? ? ? ? industrial temperature range (-40c to +85c) is available q31 q30 q29 q0 multi-queue flow-control device fstr wen paf ff / ir wradd waden wclk paf n x36, 18 or x9 data in estr pae pr rdadd raden pae n x36, x18 or x9 data out oe ef / or write control d in q out pr n 8 8 8 8 read control write flags read flags 6715 drw01 ren rclk wcs rcs functional block diagram
2 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 table of contents features ....................................................................................................................... ................................................................................................. 1 description .................................................................................................................... ............................................................................................... 5 pin configuration .............................................................................................................. ........................................................................................... 7 detailed description ........................................................................................................... ......................................................................................... 8 pin descriptions ............................................................................................................... .......................................................................................... 10 pin number table ............................................................................................................... ......................................................................................... 16 recommended dc operating conditions ............................................................................................ .................................................................... 17 absolute maximum ratings ....................................................................................................... ................................................................................. 17 dc electrical characteristics .................................................................................................. ................................................................................... 18 ac electrical characteristics .................................................................................................. .................................................................................... 20 functional description ......................................................................................................... ..................................................................................... 22 serial programming ............................................................................................................................... ............................................................... 23 default programming ............................................................................................................................... ............................................................. 23 parallel programming ............................................................................................................................... ............................................................ 23 queue description .............................................................................................................. ....................................................................................... 25 configuration of the idt multi-queue flow-control device ............................................................................................................................... ........ 25 standard mode operation ............................................................................................................................... ...................................................... 26 read queue selection and read operation ........................................................................................ ................................................................. 27 switching queues on the write port ............................................................................................................................... ....................................... 29 switching queues on the read port .............................................................................................. ....................................................................... 31 flag description ............................................................................................................... .......................................................................................... 42 pafn flag bus operation ........................................................................................................ ............................................................................. 42 full flag operation ............................................................................................................ ................................................................................... 42 empty or output ready flag operation (ef/or) ................................................................................... ............................................................... 42 almost full flag ............................................................................................................................... ..................................................................... 43 almost empty flag ............................................................................................................................... ................................................................. 43 packet ready flag .............................................................................................................. ................................................................................. 47 packet mode demarcation bits ............................................................................................................................... ............................................... 49 jtag interface ................................................................................................................. ........................................................................................... 82 jtag ac electrical characteristics ............................................................................................. ............................................................................... 86 ordering information ........................................................................................................... ...................................................................................... 87 list of tables table 1 ? device programming mode comparison ................................................................................... ..................................................................... 22 table 2 ? setting the queue programming mode during master reset ............................................................... .............................................................. 22 table 3 ? mode configuration ................................................................................................... ................................................................................... 25 table 4 ? w rite address bus, wradd[7:0] ........................................................................................ ........................................................................... 26 table 5 ? read address bus, rdadd[7:0] ......................................................................................... ......................................................................... 27 table 6 ? w rite queue switch operation ......................................................................................... ............................................................................. 30 table 7 ? read queue switch operation .......................................................................................... ........................................................................... 32 table 8 ? same queue switch .................................................................................................... ................................................................................. 32 table 9 ? flag operation boundaries and t iming ................................................................................. ......................................................................... 45 table 10 ? packet mode valid byte for x36 bit word configuration ............................................................... .................................................................. 48 table 11 ? bus-matching set-up ................................................................................................. ................................................................................. 52
3 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 list of figures figure 1. multi-queue flow-control device block diagram ........................................................................ ...................................................................... 6 figure 2a. ac t est load ........................................................................................................ ........................................................................................ 19 figure 2b. lumped capacitive load, typical derating ............................................................................ ....................................................................... 19 figure 3. re ference signals .................................................................................................... ...................................................................................... 22 figure 4. device programming hierarchy ......................................................................................... ............................................................................ 24 figure 5. idt standard mode illustrated (read port) ............................................................................ ......................................................................... 25 figure 6. first word fall through (fwft) mode illustrated (read port) .......................................................... .............................................................. 25 figure 7. write port switching queues signal sequence .......................................................................... ...................................................................... 29 figure 8. switching queues bus efficiency ............................................................................................................................... ...................................... 29 figure 9. simultaneous queue switching ............................................................................................................................... ........................................ 30 figure 10. read port switching queues signal sequence .......................................................................... ................................................................... 31 figure 11. switching queues bus efficiency ............................................................................................................................... .................................... 31 figure 12. simultaneous queue switching ............................................................................................................................... ...................................... 32 figure 13. mark and re-write sequence .......................................................................................... .......................................................................... 33 figure 14. mark and re-read sequence ........................................................................................... ........................................................................ 33 figure 15. marking a queue in packet mode - write queue mark ................................................................... .......................................................... 34 figure 16. marking a queue in packet mode - read queue mark .................................................................... ........................................................ 34 figure 17. un-marking a queue in packet mode - write queue un-mark ............................................................. ................................................... 35 figure 18. un-marking a queue in packet mode - read queue un-mark .............................................................. ................................................. 35 figure 19. marking a queue in fifo mode - write queue mark ..................................................................... .......................................................... 37 figure 20. marking a queue in fifo mode - read queue mark ...................................................................... ........................................................ 37 figure 21. un-marking a queue in fifo mode - write queue un-mark ............................................................... ................................................... 38 figure 22. un-marking a queue in fifo mode - read queue un-mark ................................................................ ................................................. 38 figure 23. leaving a mark active on the write port ............................................................................. ......................................................................... 39 figure 24. leaving a mark active on the read port .............................................................................. ....................................................................... 39 figure 25. inactivating a mark on the write port active ........................................................................ ......................................................................... 40 figure 26. inactivating a mark on the read port active ......................................................................... ....................................................................... 40 figure 27. 36bit to 36bit word configuration ................................................................................... ................................................................................. 49 figure 28. 36bit to 18bit word configuration ................................................................................... ................................................................................. 49 figure 29. 36bit to 9bit word configuration .................................................................................... .................................................................................. 49 figure 30. 18bit to 36bit word configuration ................................................................................... ................................................................................. 50 figure 31. 18bit to 18bit word configuration ................................................................................... ................................................................................. 50 figure 32. 18bit to 9bit word configuration .................................................................................... .................................................................................. 50 figure 33. 9bit to 36bit word configuration .................................................................................... .................................................................................. 51 figure 34. 9bit to 18bit word configuration .................................................................................... .................................................................................. 51 figure 35. 9bit to 9bit word configuration ..................................................................................... ................................................................................... 51 figure 36. bus-matching byte arrangement ....................................................................................... ............................................................................ 53 figure 37. master reset ........................................................................................................ ........................................................................................ 54 figure 38. default programming ............................................................................................................................... ..................................................... 55 figure 39. parallel programming ................................................................................................ ................................................................................... 56 figure 40. queue programming via write address bus ............................................................................. ..................................................................... 57 figure 41. queue programming via read address bus .............................................................................. ................................................................... 57 figure 42. serial port connection for serial programming ....................................................................... ....................................................................... 57 figure 43. serial programming .................................................................................................. .................................................................................... 58 figure 44. write queue select, write operation and full flag operation ......................................................... ............................................................... 59 figure 45. write queue select, mark and rewrite ................................................................................ .......................................................................... 60 figure 46. write operations in first word fall through mode ................................................................... .................................................................... 61 figure 47. full flag timing in expansion configuration ......................................................................... ......................................................................... 62 figure 48. read queue select, read operation (idt mode) ........................................................................ ................................................................. 63 figure 49. read queue select, read operation (fwft mode) ....................................................................... .............................................................. 64 figure 50. read queue select, mark and reread (idt mode) ....................................................................... ............................................................... 65 figure 51. output ready flag timing (in fwft mode) ............................................................................. .................................................................... 66 figure 52. read queue selection with read operations (idt mode) ................................................................ ............................................................. 67 figure 53. read queue select, read operation and oe timing ..................................................................... ............................................................... 68 figure 54. writing in packet mode during a queue change ........................................................................ .................................................................... 69
4 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 55. reading in packet mode during a queue change ........................................................................ ................................................................. 70 figure 56. writing demarcation bits (packet mode) ............................................................................................................................... ......................... 71 figure 57. data output (receive) p acket mode of opera tion ...................................................................... ................................................................... 72 figure 58. almost full flag t iming and queue switch ............................................................................ ........................................................................ 73 figure 59. almost full flag t iming ............................................................................................. .................................................................................... 73 figure 60. almost empty flag timing and queue switch (fwft mode) ............................................................... .......................................................... 74 figure 61. almost empty flag timing ............................................................................................................................... .............................................. 74 figure 62. pae n/ pr n - direct mode - status word selection ........................................................................................ ................................................. 75 figure 63. paf n - direct mode - status word selection ........................................................................................ ......................................................... 75 figure 64. pae n - direct mode, flag operation ................................................................................................ ............................................................. 76 figure 65. paf n - direct mode, flag operation ................................................................................................ ............................................................. 77 figure 66. paf n bus - polled mode ............................................................................................................ .................................................................. 78 figure 67. expansion using id codes ............................................................................................ ................................................................................ 79 figure 68. expansion using wcs / rcs ............................................................................................................................... .......................................... 80 figure 69. expansion connection read chip select ( rcs ) .............................................................................................................................. ............. 81 figure 70. expansion connection write chip select ( wcs ) .............................................................................................................................. ............. 81 figure 71. boundary scan architecture .......................................................................................... ............................................................................... 82 figure 72. tap controller state diagram ........................................................................................ ............................................................................... 83 figure 73. standard jt ag t iming ................................................................................................ .................................................................................. 86 list of figures (continued)
5 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 description the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow-con- trol devices are single chips with up to 32 discrete configurable fifo queues. all queues within the device have a common data input bus, (write port) and a common data output bus, (read port). data written into the write port is directed to a specific queue via an internal de-multiplex operation, addressed by the write address bus (wradd). data read from the read port is accessed from a specific queue via an internal multiplex operation, addressed by the read address bus (rdadd). data writes and reads can be performed at high speeds up to 200mhz, with access times of 3.6ns. data write and read operations are totally independent of each other, a queue maybe selected on the write port and a different queue on the read port or both ports may select the same queue simultaneously. the device provides full flag and empty flag status for the queue selected for write and read operations respectively. also a programmable almost full and programmable almost empty flag for each queue is provided. two 8 bit programmable flag busses are available, providing status of queues not selected for write or read operations. when 8 or less queues are configured in the device these flag busses provide an individual flag per queue, when more than 8 queues are used, either a polled or direct mode bus operation provides the flag busses with all queues status. bus matching is available on this device, either port can be 9 bits, 18 bits or 36 bits wide. when bus matching is used the device ensures the logical transfer of data throughput in a little endian manner. a packet mode of operation is also provided. packet mode provides a packet ready flag output ( pr ) indicating when at least one (or more) packets of data within a queue is available for reading. the packet ready indicator is generated upon detection of the start and end of packet demarcation bits. the multi-queue device then provides the user with an internally generated packet ready status per queue. the user has full flexibility configuring queues within the device, being able to program the total number of queues between 1 and 32, the individual queue depths being independent of each other. the programmable flag positions are also user programmable. all programming is done via a dedicated serial port. if the user does not wish to program the multi-queue device, a default option is available that configures the device in a predetermined manner. a master reset must be provided to the device. a master reset latches in configuration/setup pins and must be performed before further programming of the device can take place. on the rising edge of master reset the device operating mode is set, the device programming mode (serial, parallel or default) is set and the expansion configuration device type (master or slave) is set. the multi-queue flow-control device has the capability of operating its i/o in either 2.5v lvttl, 1.5v hstl or 1.8v ehstl mode. the type of i/o is selected via the iosel input. the core supply voltage (v dd ) to the multi-queue is 1.8v, however the output levels can be set independently via a separate supply, v ddq . a jtag test port is provided, here the multi-queue flow-control device has a fully functional boundary scan feature, compliant with ieee 1149.1 standard test access port and boundary scan architecture. see figure 1, multi-queue flow-control device block diagram for an outline of the functional blocks within the device.
6 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 oe x9, x18, x36 q out output register q 0 - q 35 wradd waden input demux wclk wen write control logic d in write pointers active q flags paf general flag monitor fstr paf n ff / ir fsync paf reset logic serial multi-queue programming pae / paf offset tms tdi tdo tck trst fm bm[3:0] mrs si so sclk seni rclk ren read control logic read pointers active q flags pae general flag monitor estr ef / or esync rdadd raden df fxo fxi exi exo 6715 drw02 x9, x18, x36 8 8 8 id0 id1 id2 device id 3 bit pkt packet mode logic jtag logic d 35 , d 17 , d 8 = teop d 34 , d 16 , d 8 = tsop 2 2 pr pr n/ pae n 8 seno dfm mast pae upto 32 fifo queues 4.7 mbit dual port memory output mux d 0 - d 35 rcs io level control iosel vref wcs 4 d 35 , d 17 , d 8 = reop d 34 , d 16 , d 8 = rsop figure 1. multi-queue flow-control device block diagram
7 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 d14 a d13 d12 d10 q9 d7 q6 d4 q3 d1 id1 tck tdo q12 q14 q15 d15 b d16 d11 d9 q8 d6 q5 d3 q2 d0 id0 tms tdi q11 q13 q19 d17 c d18 d19 d8 q7 d5 q4 d2 q1 trst q0 iosel id2 q10 q17 q18 d20 d d21 d22 v ddq v ddq v ddq v ddq v ddq v ddq v cc v cc v cc v cc q16 q21 q20 d23 e d24 d25 v ddq v ddq v ddq v ddq v cc v cc v cc v cc gnd gnd q24 q23 q22 d26 f d27 d28 v ddq v ddq v cc v cc gnd gnd gnd gnd gnd gnd q27 q26 q25 d29 g d30 d31 v cc v cc v cc v cc gnd gnd gnd gnd gnd gnd q30 q29 q28 d32 h d33 d34 v cc v cc gnd gnd gnd gnd gnd gnd gnd gnd q33 q32 q31 bm3 j qsel0 d35 v cc v cc gnd gnd gnd gnd gnd gnd gnd gnd pkt q35 q34 qsel1 k gnd vref v cc v cc v cc v cc gnd gnd gnd gnd gnd gnd gnd mast fm si l dfm df v ddq v ddq v cc v cc gnd gnd gnd gnd gnd gnd bm2 bm1 bm0 seno m seni so v ddq v ddq v ddq v ddq v cc v cc v cc v cc gnd gnd oe rdadd0 rdadd1 wradd1 n wradd0 sclk v ddq v ddq v ddq v ddq v ddq v ddq v cc v cc v cc v cc rdadd2 rdadd3 rdadd4 wradd4 p wradd3 wradd2 waden pae 3 paf 3 pae 6 paf 6 pae 7 paf 7 pae ir / ff or / ef rdadd5 rdadd6 rdadd7 wradd6 r wradd5 fsync fstr pae 2 paf 2 pae 5 paf 5 fwft paf 4 rcs paf pr raden estr esync wradd7 t fxi fxo paf 0 pae 1 paf 1 pae 4 wen ren wclk rclk wcs mrs pae 0 12 3 4 13 512 611 710 8 9 14 15 16 6715 drw03 a1 ball pad corner exo exi pin configuration pbga (bb256-1, order code: bb) top view
8 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 detailed description multi-queue structure the idt multi-queue flow-control device has a single data input port and single data output port with up to 32 fifo queues in parallel buffering between the two ports. the user can setup between 1 and 32 queues within the device. these queues can be configured to utilize the total available memory, providing the user with full flexibility and ability to configure the queues to be various depths, independent of one another. memory organization/ allocation the memory is organized into what is known as ?blocks?, each block being 256 x36 bits. when the user is configuring the number of queues and individual queue sizes the user must allocate the memory to respective queues, in units of blocks, that is, a single queue can be made up from 0 to m blocks, where m is the total number of blocks available within a device. also the total size of any given queue must be in increments of 256 x36. for the idt72p51539, IDT72P51549, idt72p71759 and idt72p51569 the total available memory is 128, 256, and 512 blocks respectively (a block being 256 x36). queues can be built from these blocks to make any size queue desired and any number of queues desired. bus widths the input port is common to all queues within the device, as is the output port. the device provides the user with bus matching options such that the input port and output port can be either x9, x18 or x36 bits wide, the read and write port widths can be set independently of one another. because a ports are common to all queues the width of the queues is not individually set. the input width of all queues are the same and the output width of all queues are the same. writing to and reading from the multi-queue data being written into the device via the input port is directed to a discrete queue via the write queue address input. conversely, data being read from the device read port is read from a queue selected via the read queue address input. data can be simultaneously written into and read from the same queue or different queues. once a queue is selected for data writes or reads, the writing and reading operation is performed in the same manner as a conventional idt synchronous fifo, utilizing clocks and enables, there is a single clock and enable per port. when a specific queue is addressed on the write port, data placed on the data inputs is written to that queue sequentially based on the rising edge of a write clock provided setup and hold times are met. conversely, data is read on to the output port after an access time from a rising edge on a read clock. the operation of the write port is comparable to the function of a conventional fifo operating in standard idt mode. write operations can be performed on the write port provided that the queue currently selected is not full, a full flag output provides status of the selected queue. the operation of the read port is comparable to the function of a conventional fifo operating in fwft mode. when a queue is selected on the output port, the next word in that queue will automatically fall through to the output register. all subsequent words from that queue require an enabled read cycle. data cannot be read from a selected queue if that queue is empty, the read port provides an empty flag indicating when data read out is valid. if the user switches to a queue that is empty, the last word from the previous queue will remain on the output bus. in addition to first word fall through (fwft) the device can operate in idt standard mode or packet mode. in idt standard mode the read port provides a word to the output bus (qout) for each clock cycle that ren is asserted. refer to figure 48, read queue select, read operation (idt mode) . in packet mode the device asserts a packet ready status flag to indicate one or more packets are available for reading. as mentioned, the write port has a full flag, providing full status of the selected queue. along with the full flag a dedicated almost full flag is provided, this almost full flag is similar to the almost full flag of a conventional idt fifo. the device provides a user programmable almost full flag for all 32 queues and when a respective queue is selected on the write port, the almost full flag provides status for that queue. conversely, the read port has an empty flag, providing status of the data being read from the queue selected on the read port. as well as the empty flag the device provides a dedicated almost empty flag. this almost empty flag is similar to the almost empty flag of a conventional idt fifo. the device provides a user programmable almost empty flag for each 32 queues and when a respective queue is selected on the read port, the almost empty flag provides status for that queue. programmable flag busses in addition to these dedicated flags, full & almost full on the write port and output ready & almost empty on the read port, there are two flag status busses. an almost full flag status bus is provided, this bus is 8 bits wide. also, an almost empty flag status bus is provided, again this bus is 8 bits wide. the purpose of these flag busses is to provide the user with a means by which to monitor the data levels within queues that may not be selected on the write or read port. as mentioned, the device provides almost full and almost empty registers (programmable by the user) for each of the 32 queues in the device. in the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow- control devices the user has the option of utilizing anywhere between 1 and 32 queues, therefore the 8 bit flag status busses are multiplexed between the 32 queues, a flag bus can only provide status for 8 of the 32 queues at any moment, this is referred to as a ?status word?, such that when the bus is providing status of queues 1 through 8, this is status word 1, when it is queues 9 through 16, this is status word 2 and so on up to status word 16. if less than 32 queues are setup in the device, there are still 4 status words, such that in ?polled? mode of operation the flag bus will still cycle through 4 status words. if for example only 22 queues are setup, status words 1 and 2 will reflect status of queues 1 through 8 and 9 through 16 respectively. status word 3 will reflect the status of queues 17 through 22 on the least significant 6 bits, the most significant 2 bits of the flag bus are don?t care. the remaining status words are not used as there are no queues to report. the flag busses are available in two user selectable modes of operation, ?polled? or ?direct?. when operating in polled mode a flag bus provides status of each status word sequentially, that is, on each rising edge of a clock the flag bus is updated to show the status of each status word in order. the rising edge of the write clock will update the almost full bus and a rising edge on the read clock will update the almost empty bus. the mode of operation is always the same for both the almost full and almost empty flag busses. when operating in direct mode, the status word on the flag bus is selected by the user. so the user can actually address the status word to be placed on the flag status busses, these flag busses operate independently of one another. addressing of the almost full flag bus is done via the write port and addressing of the almost empty flag bus is done via the read port. packet ready the multi-queue flow-control device also offers a ?packet mode? operation. packet mode is user selectable. in packet mode with a x36 bit word length, users can define the length of packets or frame by using the two most significant bits of the word. in a 36-bit word, bit 34 is used to mark the start of packet (sop) and bit 35 is used to mark the end of packet (eop) as shown in table 10. when writing data into a given queue , the first word being written is marked, by the user setting bit 34 as the ?start of packet? (sop) and the last word written is marked as the ?end of packet? (eop) with all words written between the start of packet (sop) marker (bit 34) and the end of packet (eop) packet marker
9 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 (bit 35) constituting the entire packet. a packet can be any length the user desires, up to the total available memory in the multi-queue device. the device monitors the sop (bit 34) and looks for the word that contains the eop (bit 35). the read port is supplied with an additi onal status flag, ?packet ready?. the packet ready ( pr ) flag in conjunction with empty flag or output ready flag ( ef / or ) indicates when at least one packet is available to read. when in packet mode the almost empty flag status , provides packet ready flag status for individual queues. expansion (idt standard mode) expansion of multi-queue devices is also possible, up to 8 devices can be connected in a parallel fashion providing the possibility of both depth expansion or queue expansion. expansion of devices is supported only in idt standard mode. depth expansion means expanding the depths of individual queues. queue expansion means increasing the total number of queues available. depth expansion is possible by virtue of the fact that more memory blocks within a multi-queue device can be allocated to a fewer number of queues to increase the depth of each queue. for example, depth expansion of 8 devices provides the possibility of 8 queues of 4096k bits, each queue being setup within a single device utilizing all memory blocks available to produce a single queue. this is the deepest queue that can setup within a device. for queue expansion a maximum number of 256 queues (8 x 32 queues) may be setup, with a average of each queue being 4k x36 deep using 8 devices, each with 32 queues. if fewer queues are desired, then more memory blocks will be available to increase queue depths if desired. when connecting multi- queue devices in expansion configuration all respective input pins (data & control) and output pins (data & flags), should be ?connected? together between individual devices. refer to figure 67, expansion using id codes , and figure 68, expansion using wcs / rcs for device connection details.
10 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 bm [3:0] bus matching hstl-lvttl these pins define the bus width of the input write port and the output read port of the device. the bus (j1, l14,15,16) input widths are set during a master rest cycle. the bm[3:0] signals must meet the setup and hold time requirements of master reset and must not toggle/change state after a master reset cycle. d[35:0] data input bus hstl-lvttl these are the 36 data input pins. data is written into the device via these input pins on the ri sing edge din input of wclk provided that wen is low. note, that in packet mode d32-d35 may be used as packet (see pin no. markers, please see packet ready functional discussion for more detail. due to bus matching not all inputs table for details) may be used, any unused inputs should be tied low. d[35] transmit end of packet (teop) d[34] transmit start of packet (tsop) d[33:32] user definable bits d[31:0] data input bits df (1) default flag hstl-lvttl if the user requires default programming of the multi-queue device, this pin must be setup before master (l3) input reset and must not toggle during any device operation. the state of this input at master reset determines the value of the pae / paf flag offsets. if df is low the value is 8, if df is high the value is 128. dfm (1) default mode hstl-lvttl the multi-queue device requires programming after master reset. the user can do this serially via the (l2) input serial port, or via parallel programming or by the default programming option the default programming option provides a pre-defined configuration. if dfm is low at master reset then serial mode will be selected, if high then default mode is selected. ef / or empty flag/ hstl-lvttl this signal is bi-modal. when idt standard mode is selected the pin provides empty flag ( ef ) status. (p9) output ready output when fwft mode is selected the pin provides output ready ( or ) status. this output flag provides output ready status for the data word present on the multi-queue flow-control device data output bus, qout in fwft mode. this flag is a 2-stage delayed to match the data output path delay. there is a 3 rclk cycle delay in idt standard mode and a 4 cycle delay for fwft mode from the time a given queue is selected for reads, to the time the or flag represents the data in that queue. when a selected queue on the read port is read to empty, the or flag will go high, indicating that data on the output bus is not valid. the or flag also has high-impedance capability, required when multiple devices are used and the or flags are tied together. estr pae n flag bus hstl-lvttl if direct operation of the pae n bus has been selected, the estr input is used in conjunction with rclk (r15) strobe input and the rdadd bus to select a status word of queues to be placed on to the pae n bus outputs. a status word addressed via the rdadd bus is selected on the rising edge of rclk provided that estr is high. if polled operations has been selected, estr should be tied inactive, low. note, that a pae n flag bus selection cannot be made, (estr must not go active) until programming of the part has been completed and seno has gone low. esync pae n bus sync hstl-lvttl esync is an output from the multi-queue device that provides a synchronizing pulse for the pae n bus (r16) output during polled operation of the pae n bus. during polled operation each status word of queue status flags is loaded on to the pae n bus outputs sequentially based on rclk. the first rclk rising edge loads status word 1 on to pae n, the second rclk rising edge loads status word 2 and so on. the fifth rclk rising edge will again load status word 1. during the rclk cycle that status word 1 of a selected device is placed on to the pae n bus, the esync output will be high. for all other status words of that device, the esync output will be low. exi pae n bus hstl-lvttl the exi input is used when multi-queue devices are connected in expansion configuration and polled (t16) expansion in input pae n bus operation has been selected . exi of device ?n? connects directly to exo of device ?n-1?. the exi receives a token from the previous device in a chain. in single device mode the exi input must be tied low if the pae n bus is operated in direct mode. if the pae n bus is operated in polled mode the exi input must be connected to the exo output of the same device. in expansion configuration the exi of the first device should be tied low, when direct mode is selected. exo pae n bus hstl-lvttl exo is an output that is used when multi-queue devices are connected in expansion configuration and (t15) expansion out output polled pae n bus operation has been selected . exo of device ?n? connects directly to exi of device ?n+1?. this pin pulses when device n has placed its final (4th) status word on to the pae n bus with respect to rclk. this pulse (token) is then passed on to the next device in the chain ?n+1? and on the next rclk rising edge the first status word of device n+1 will be loaded on to the pae n bus. this continues through the chain and exo of the last device is then looped back to exi of the first device. the esync output of each device in the chain provides synchronization to the user of this looping event. pin descriptions symbol & name i/o type description (pin no.)
11 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 ff / ir full flag/ hstl-lvttl this pin provides the full flag output for the active queue, that is, the queue selected on the input port (p8) input ready output for write operations, (selected via wclk, wradd bus and waden). on the 3rd wclk cycle after a queue selection, this flag will show the status of the newly selected queue. data can be written to this queue on the next cycle provided ff is high. this flag has high-impedance capability, this is important during expansion of devices, when the ff flag output of up to 8 devices may be connected together on a common line. the device with a queue selected takes control of the ff bus, all other devices place their ff output into high-impedance. when a queue selection is made on the write port this output will switch from high-impedance control on the next wclk cycle. this flag is synchronized to wclk. fm (1) flag mode hstl-lvttl this pin is setup before a master reset and must not toggle during any device operation. the state of the (k16) input fm pin during master reset will determine whether the paf n and pae n flag busses operate in either polled or direct mode. if this pin is high the mode is polled, if low then it will be direct. fstr paf n flag bus hstl-lvttl if direct operation of the paf n bus has been selected, the fstr input is used in conjunction with wclk (r4) strobe input and the wradd bus to select a status word of queues to be placed on to the paf n bus outputs. a status word addressed via the wradd bus is selected on the rising edge of wclk provided that fstr is high. if polled operations has been selected, fstr should be tied inactive, low. note, that a paf n flag bus selection cannot be made, (fstr must not go active) until programming of the part has been completed and seno has gone low. fsync paf n bus sync hstl-lvttl fsync is an output from the multi-queue device that provides a synchronizing pulse for the paf n bus (r3) output dur ing polled operation of the paf n bus. during polled operation each status word of queue status flags is loaded on to the paf n bus outputs sequentially based on wclk. the first wclk rising edge loads status word 1 on to paf n, the second wclk rising edge loads status word 2 and so on. the fifth wclk rising edge will again load status word 1. during the wclk cycle that status word 1 of a selected device is placed on to the paf n bus, the fsync output will be high. for all other status words of that device, the fsync output will be low. fwft first word fall hstl-lvttl first word fall through (fwft) or idt standard mode is selected during a master reset cycle. to select (r11) through input fwft mode assert the fwft signal = low, if fwft = high during the master reset then idt standard mode is selected. fxi paf n bus hstl-lvttl the fxi input is used when multi-queue devices are connected in expansion configuration and polled (t2) expansion in input paf n bus operation has been selected . fxi of device ?n? connects directly to fxo of device ?n-1?. the fxi receives a token from the previous device in a chain. in single device mode the fxi input must be tied low if the paf n bus is operated in direct mode. if the paf n bus is operated in polled mode the fxi input must be connected to the fxo output of the same device. in expansion configuration the fxi of the first device should be tied low, when direct mode is selected. fxo paf n bus hstl-lvttl fxo is an output that is used when multi-queue devices are connected in expansion configuration and (t3) expansion out output polled paf n bus operation has been selected . fxo of device ?n? connects directly to fxi of device ?n+1?. this pin pulses when device n has placed its final (4th) status word on to the paf n bus with respect to wclk. this pulse (token) is then passed on to the next device in the chain ?n+1? and on the next wclk rising edge the first status word of device n+1 will be loaded on to the paf n bus. this continues through the chain and fxo of the last device is then looped back to fxi of the first device. the fsync output of each device in the chain provides synchronization to the user of this looping event. id[2:0] (1) device id pins hstl-lvttl for the 32q multi-queue device the wradd and rdadd address busses are 8 bits wide. when a queue (id2-c9 input selection takes place the 1-3 msb?s of this 8 bit address bus are used to address the specific device (the id1-a10 5-7 lsb?s are used to address the queue within that device). during write/read operations the 1-3 msb?s id0-b10) of the address are compared to the device id pins. in an eight device expansion configuration, the first device in a chain of multi-queue?s (connected in expansion configuration), may be setup as ?000' (this is referred to as the master device), the second as ?001? and so on through to device 8 which is ?111?, however the id does not have to match the device order. in single device mode these pins should be setup as ?000? and the 3 msb?s of the wradd and rdadd address busses should be tied low. the id[2:0] inputs setup a respective devices id during master reset. these id pins must not toggle during any device operation. note, the device selected as the ?master? must be id ?000?. in serial programming, the master device (id 000) must be programmed last. symbol & name i/o type description pin no. pin descriptions (continued)
12 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 iosel io select lvttl this pin is used to select either hstl or 2.5v lvttl operation for the i/o. if hstl or ehstl i/o are (c8) input required then iosel should be tied high (v ddq ). if lvttl i/o are required then it should be tied low. mast (1) master device hstl-lvttl the state of this input at master reset determines whether a given device (within a chain of devices), is the (k15) input master device or a slave. if this pin is high, the device is the master if it is low then it is a slave. the master device is the first to take control of all outputs after a master reset, all slave devices go to high- impedance, preventing bus contention. if a multi-queue device is being used in single device mode, this pin must be set high. mrs master reset hstl-lvttl a master reset is performed by taking mrs from high to low, to high. device programming is required (t9) input after master reset. oe output enable hstl-lvttl the output enable signal is an asynchronous signal used to provide three-state control of the multi-queue (m14) input data output bus, qout. if a device has been configured as a ?master? device, the qout data outputs will be in a low impedance condition if the oe input is low. if oe is high then the qout data outputs will be in high impedance. if a device is configured a ?slave? device, then the qout data outputs will always be in high impedance until that device has been selected on the read port, at which point oe provides three- state of that respective device. pae programmable hstl-lvttl this pin provides the almost-empty flag status for the queue that has been selected on the output port (p10) almost-empty output for read operations, (selected via rclk, rdadd and raden). this pin is low when the selected flag queue is almost-empty. this flag output may be duplicated on one of the pae n bus lines. this flag is synchronized to rclk. pae n/ pr n programmable hstl-lvttl on the 32q device the pae n/ pr n bus is 8 bits wide. during a master reset this bus is setup for either ( pae 7-p11 almost-empty output almost empty mode or packet mode. this output bus provides pae / pr n status of 8 queues (1 status word ), pae 6-p12 flag bus/packet within a selected device, having a maximum of 16 status words. during queue read/write operations pae 5-r12 ready flag bus these outputs provide programmable empty flag status or packet ready status, in either direct or polled pae 4-t12 mode. the mode of flag operation is determ ined during master reset via the state of the fm input. pae 3-p13 this flag bus is capable of high-impedance state, this is important during expansion of multi-queue devices. pae 2-r13 during direct operation the pae n/ pr n bus is updated to show the pae / pr status of a status word of queues pae 1-t13 within a selected device. selection is made using rclk, estr and rdadd. during polled operation pae 0-t14) the pae n/ pr n bus is loaded with the pae / pr n status of multi-queue flow-control status words sequentially based on the rising edge of rclk. pae or pr operation is determined by the state of pkt during master reset. paf programmable hstl-lvttl this pin provides the almost-full flag status for the queue that has been selected on the input port for (r8) almost-full flag output write operations, (selected via wclk, wradd and waden). this pin is low when the selected queue is almost-full. this flag output may be duplicated on one of the paf n bus lines. this flag is synchronized to wclk. paf n programmable hstl-lvttl on the 32q device the paf n bus is 8 bits wide. at any one time this output bus provides paf status ( paf 7-p7 almost-full flag output of 8 queues (1 status word), within a selected device, having a maximum of 16 status words. during queue paf 6-p6 bus read/write operations these outputs provide programmable full flag status, in either direct or polled mode. paf 5-r6 the mode of flag operation is determined during master reset via the state of the fm input. this flag bus paf 4-r7 is capable of high-impedance state, this is important during expansion of multi-queue devices. during direct paf 3-p5 operation the paf n bus is updated to show the paf status of a status word of queues within a selected paf 2-r5 device. selection is made using wclk, fstr, wradd and waden. during polled operation the paf n paf 1-t5 bus is loaded with the paf status of multi-queue flow-control status words sequentially based on the rising paf 0-t4) edge of wclk. pkt (1) packet mode hstl-lvttl the state of this pin during a master reset will determine whether the part is operating in packet mode (j14) input providing both a packet ready ( pr ) output and a programmable almost empty ( pae ) discrete output, or standard mode, providing a ( pae ) output only. if this pin is high during master reset the part will operate in packet mode, if it is low then almost empty mode. if packet mode has been selected the read port flag bus becomes packet ready flag bus, pr n and the discrete packet ready flag, pr is functional. if almost empty operation has been selected then the flag bus provides almost empty status, pae n and the discrete almost empty flag, pae is functional, the pr flag is inactive and should not be connected. packet ready utilizes user marked locations to identify start and end of packets being written into the device. pin descriptions (continued) symbol & name i/o type description pin no.
13 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 pin descriptions (continued) pr packet ready hstl-lvttl if packet mode has been selected this flag output provides packet ready status of the queue selected (r9) flag output for read operations. during a master reset the state of the pkt input determines whether packet mode of operation will be used. if packet mode is selected, then the condition of the pr flag and ef / or signal are asserted indicates a packet is ready for reading. the user must mark the start of a packet and the end of a packet when writing data into a queue. using these start of packet (sop) and end of packet (eop) markers, the multi-queue device sets pr low if one or more ?complete? packets are available in the queue. a complete packet(s) must be written before the user is allowed to switch queues. q[35:0] data output bus hstl-lvttl these are the 36 data output pins. data is read out of the device via these output pins on the rising edge qout output of rclk provided that ren is low, oe is low and the queue is selected. note, that in packet ready (see pin no. mode q32-q35 may be used as packet markers, please see packet ready functional discussion for more table for details) detail. due to bus matching not all outputs may be used, any unused outputs should not be connected. qsel[1:0] queue select hstl-lvttl the qsel pins provides various queue programming options. refer to table 2, for details. (qsel1-k1 input 1. a qsel value of 00, enables the user to program the number of queues using the write address bus. qsel0-j2 2. a qsel value of 01, enables the user to program the number of queues using the read address bus. 3. a qsel value of 10, selects a configuration of 16 queues. 4. a qsel value of 11, selects a configuration of 32 queues raden read address hstl-lvttl the raden input is used in conjunction with rclk and the rdadd address bus to select a queue to (r14) enable input be read from. a queue addressed via the rdadd bus is selected on the rising edge of rclk provided that raden is high. raden should be asserted (high) only during a queue change cycle(s). raden should not be permanently tied high. raden cannot be high for the same rclk cycle as estr. note, that a read queue selection cannot be made, (raden must not go active) until programming of the part has been completed and seno has gone low. rclk read clock hstl-lvttl when enabled by ren , the rising edge of rclk reads data from the selected queue via the output (t10) input bus qout. the queue to be read is selected via the rdadd address bus and a rising edge of rclk while raden is high. a rising edge of rclk in conjunction with estr and rdadd will also select the pae n/ pr n flag status word to be placed on the pae n/ pr n bus during direct flag operation. during polled flag operation the pae n/ pr n bus is cycled with respect to rclk and the esync signal is synchronized to rclk. the pae , pr and or outputs are all synchronized to rclk. during device expansion the exo and exi signals are based on rclk. rclk must be continuous and free-running. rcs read chip hstl-lvttl the rcs signal in concert with ren signal provides control to enable data on to the output read data bus. (r10) select input during a master reset cycle the rcs it is don?t care signal. rdadd read address hstl-lvttl for the 32q device the rdadd bus is 8 bits. the rdadd bus is a dual purpose address bus. the first [7:0] bus input function of rdadd is to select a queue to be read from. the least significant 5 bits of the bus, rdadd[4:0] (rdadd7-p16 are used to address 1 of 32 possible queues within a multi-queue device. the most significant 3 bits, rdadd6-p15 rdadd[7:5] are used to select 1 of 8 possible multi-queue devices that may be connected in expansion rdadd5-p14 mode. an in expansion configuration the 3 msb?s will address a device with the matching id code. the rdadd4-n16 address pr esent on the rdadd bus will be selected on a rising edge of rclk provided that raden is rdadd3-n15 high, (note, that data can be placed on to the qout bus, read from the previously selected queue on this rdadd2-n14 rclk edge). two rclk rising edges after read queue select, data will be placed on to the qout outputs rdadd1-m16 from the newly selected queue, regardless of ren due to the first word fall through effect. rdadd0-m15) the second function of the rdadd bus is to select the status word of queues to be loaded on to the pae n/ pr n bus during strobed flag mode. the least significant 2 bits, rdadd[1:0] are used to select the status word of a device to be placed on the pae n bus. the most significant 3 bits, rdadd[7:5] are again used to select 1 of 8 possible multi-queue devices that may be connected in expansion configuration. address bits rdadd[4:2] are don?t care during status word selection. the status word address present on the rdadd bus will be selected on the rising edge of rclk provided that estr is high, (note, that data can be placed on to the qout bus, read from the previously selected queue on this rclk edge). please refer to table 5 for details on rdadd bus. ren read enable hstl-lvttl the ren input enables read operations from a selected queue based on a rising edge of rclk. (t11) input in the fwft mode, a queue to be read from can be selected via rclk, raden and the rdadd address bus regardless of the state of ren . a read enable is not required to cycle the pae n/ pr n bus (in polled mode) or to select the pae n status word, (in direct mode). symbol & name i/o type description pin no.
14 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 pin descriptions (continued) sclk serial clock hstl-lvttl if serial programming of the multi-queue device has been selected during master reset, the sclk input (n3) input clocks the serial data through the multi-queue device. data setup on the si input is loaded into the device on the rising edge of sclk provided that seni is enabled, low. when expansion of devices is performed the sclk of all devices should be connected to the same source. seni serial input hstl-lvttl during serial programming of a multi-queue device, data loaded onto the si input will be clocked into the (m2) enable input part (via a rising edge of sclk), provided the seni input of that device is low. if multiple devices are cascaded, the seni input should be connected to the seno output of the previous device. so when serial loading of a given device is complete, its seno output goes low, allowing the next device in the chain to be programmed ( seno will follow seni of a given device once that device is programmed). the seni input of the master device (or single device), should be controlled by the user. seno serial output hstl-lvttl this output is used to indicate that serial programming or default programming of the multi-queue device (m1) enable output has been completed. seno follows seni once programming of a device is complete. therefore, seno will go low after programming provided seni is low, once seni is taken high again, seno will also go high. when the seno output goes low, the device is ready to begin normal read/write operations. if multiple devices are cascaded and serial programming of the devices will be used, the seno output should be connected to the seni input of the next device in the chain. when serial programming of the first device is complete, seno will go low, thereby taking the seni input of the next device low and so on throughout the chain. when a given device in the chain is fully programmed the seno output essentially follows the seni input. the user should monitor the seno output of the final device in the chain. when this output goes low, serial loading of all devices has been completed. si serial in hstl-lvttl during serial programming this pin is loaded with the serial data that will configure the multi-queue devices. (l1) input data present on si will be loaded on a rising edge of sclk provided that seni is low. in expansion mode the serial data input is loaded into the first device in a chain. when that device is loaded and its seno has gone low, the data present on si will be directly output to the so output. the so pin of the first device connects to the si pin of the second and so on. the multi-queue device setup registers are shift registers. so serial out hstl-lvttl this output is used in expansion configuration and allows serial data to be passed through devices in the (m3) output chain to complete programming of all devices. the si of a device connects to so of the previous device in the chain. the so of the final device in a chain should not be connected. tck (2) jtag clock hstl-lvttl clock input for jtag function. one of four terminals required by ieee standard 1149.1-1990. test (a8) input operations of the device are synchronous to tck. data from tms and tdi are sampled on the rising edge of tck and outputs change on the falling edge of tck. if the jtag function is not used this signal needs to be tied to gnd. tdi (2) jtag test data hstl-lvttl one of four terminals required by ieee standard 1149.1-1990. during the jtag boundary scan operation, (b9) input input test data serially loaded via the tdi on the rising edge of tck to either the instruction register, id register and bypass register. an internal pull-up resistor forces tdi high if left unconnected. tdo (2) jtag test data hstl-lvttl one of four terminals required by ieee standard 1149.1-1990. during the jtag boundary scan (a9) output output operation, test data serially loaded output via the tdo on the falling edge of tck from either the instruction register, id register and bypass register. this output is high impedance except when shifting, while in shift-dr and shift-ir controller states. tms (2) jtag mode hstl-lvttl tms is a serial input pin. one of four terminals required by ieee standard 1149.1-1990. tms directs the (b8) select input device through its tap controller states. an internal pull-up resistor forces tms high if left unconnected. trst (2) jtag reset hstl-lvttl trst is an asynchronous reset pin for the jtag controller. the jtag tap controller does not automatically (c7) input reset upon power-up, thus it must be reset by either this signal or by setting tms= high for five tck cycles. if the tap controller is not properly reset then the outputs will always be in high-impedance. if the jtag function is used but the user does not want to use trst , then trst can be tied with mrs to ensure proper queue operation. if the jtag function is not used then this signal needs to be tied to gnd. an internal pull-up resistor forces trst high if left unconnected. waden write address hstl-lvttl the waden input is used in conjunction with wclk and the wradd address bus to select a queue to (p4) enable input be written in to. a queue addressed via the wradd bus is selected on the rising edge of wclk provided that waden is high. waden should be asserted (high) only during a queue change cycle(s). waden should not be permanently tied high. waden cannot be high for the same wclk cycle as fstr. note, symbol & name i/o type description (pin no.)
15 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 pin descriptions (continued) notes: 1. inputs should not change after master reset. 2. these pins are for the jtag port. please refer to pages 82-86 and figures 71-73. waden write address hstl-lvttl that a write queue selection cannot be made, (waden must not go active) until programming of the part (continued) enable input has been completed and seno has gone low. wclk write clock hstl-lvttl when enabled by wen , the rising edge of wclk writes data into the selected queue via the input (t7) input bus, din. the queue to be written to is selected via the wradd address bus and a rising edge of wclk while waden is high. a rising edge of wclk in conjunction with fstr and wradd will also select the flag status word to be placed on the paf n bus during direct flag operation. during polled flag operation the paf n bus is cycled with respect to wclk and the fsync signal is synchronized to wclk. the paf n, paf and ff outputs are all synchronized to wclk. during device expansion the fxo and fxi signals are based on wclk. the wclk must be continuous and free-running. wcs write chip hstl-lvttl the wcs pin can be regarded as a second wen input, enabling/disabling write operations. (t8) select input wen write enable hstl-lvttl the wen input enables write operations to a selected queue based on a rising edge of wclk. a (t6) input queue to be written to can be selected via wclk, waden and the wradd address bus regardless of the state of wen . data present on din can be written to a newly selected queue on the second wclk cycle after queue selection provided that wen is low. a write enable is not required to cycle the paf n bus (in polled mode) or to select the paf n status word , (in direct mode). wradd write address hstl-lvttl for the 32q device the wradd bus is 8 bits. the wradd bus is a dual purpose address bus. the [7:0] bus input first function of wradd is to select a queue to be written to. the least significant 5 bits of the bus, (wradd7-t1 wradd[4:0] are used to address 1 of 32 possible queues within a multi-queue device. in expansion wradd6-r1 configuration the most significant 3 bits, wradd[7:5] are used to select 1 of 8 possible multi-queue devices wradd5-r2 (dependant on the number of queues addressed) that may be connected in expansion configuration. these wradd4-p1 3 msb?s will address a device with the matching id code. the address present on the wradd bus will wradd3-p2 be selected on a rising edge of wclk provided that waden is high, (note, that data present on the din wradd2-p3 bus can be written into the previously selected queue on this wclk edge and on the next rising wclk wradd1-n1 also, providing that wen is low). two wclk rising edges after write queue select, data can be written wradd0-n2) into the newly selected queue. the second function of the wradd bus is to select the status word of queues to be loaded on to the paf n bus during strobed flag mode. the least significant 2 bits, wradd[1:0] are used to select the status word of a device to be placed on the paf n bus. the most significant 3 bits, wradd[7:5] are again used to select 1 of 8 possible multi-queue devices that may be connected in expansion configuration. address bits wradd[4:2] are don?t care during status word selection. the status word address present on the wradd bus will be selected on the rising edge of wclk provided that fstr is high, (note, that data can be written into the previously selected queue on this wclk edge). please refer to table 4 for details on the wradd bus. v dd +1.8v supply power these are v dd power supply pins and must all be connected to a +1.8v supply rail. (see pg. 16) v ddq o/p rail voltage power these pins must be tied to the desired output rail voltage. for lvttl i/o these pins must be connected (see pg. 16) to +2.5v, for hstl these pins must be connected to +1.5v and for ehstl these pins must be connected to +1.8v. gnd ground pin ground these are ground pins and must all be connected to the gnd supply rail. (see pg. 16) vref reference hstl this is a voltage reference input and must be connected to a voltage level determined from the table (k3) voltage input "recommended dc operating conditions". the input provides the reference level for hstl/ehstl inputs. for lvttl i/o mode this input should be tied to gnd. symbol & name i/o type description pin no.
16 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 pin number table symbol name i/o type pin number d[35:0] data input bus hstl-lvttl d35-j3, d(34-32)-h(3-1), d(31-29)-g(3-1), d(28-26)-f(3-1), d(25-23)-e(3-1), d(22-20)-d(3-1), din input d(19-17)-c(3-1), d(16,15)-b(2,1), d(14-12)-a(1-3), d11-b3, d10-a4, d9-b4, d8-c4, d7-a5, d6-b5, d5-c5, d4-a6, d3-b6, d2-c6, d1-a7, d0-b7 q[35:0] data output bus hstl-lvttl q(35,34)-j(15,16), q(33-31)-h(14-16), q(30-28)-g(14-16), q(27-25)-f(14-16), q(24-22)-e(14-16), qout output q(21,20)-d(15,16), q19-b16, q(18,17)-c(16,15), q16-d14, q(15,14)-a(16,15), q13-b15, q12-a14, q11-b14, q10-c14, q9-a13, q8-b13, q7-c13, q6-a12, q5-b12, q4-c12, q3-a11, q2-b11, q(1,0)-c(11,10) v dd +1.8v supply power d(7-10), e(6,7,10,11), f(5,12), g(4,5,12,13), h(4,13), j(4,13), k(4,5,12,13), l(5,12), m(6,7,10,11), n(7-10) v ddq o/p rail voltage power d(4-6,11-13), e(4,5,12,13), f(4,13), l(4,13), m(4,5,12,13), n(4-6,11-13) gnd ground pin ground e(8-9), f(6-11), g(6-11), h(5-12), j(1,5-12), k(2,6-11,14), l(6-11), m(8-9)
17 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 symbol rating commercial unit v term terminal voltage ?0.5 to +3.6 (2) v with respect to gnd t stg storage temperature ?55 to +125 c i out dc output current ?50 to +50 ma symbol parameter min. typ. max. unit v dd supply voltage 1.7 1.8 1.9 v v ddq output rail voltage for i/os ? lvttl 2.375 2.5 2.625 v ? ehstl 1.7 1.8 1.9 v ? hstl 1.4 1.5 1.6 v gnd supply voltage 0 0 0 v v ih (2) input high voltage ? lvttl 1.7 ? 2.625 v ? ehstl v ref +0.2 ? ? v ? hstl v ref +0.2 ? ? v v il input low voltage ? lvttl -0.3 ? 0.7 v ? ehstl ? ? v ref -0.2 v ? hstl ? ? v ref -0.2 v v ref (1) voltage reference input ? ehstl 0.8 0.9 1.0 v (hstl only) ? hstl 0.68 0.75 0.9 v t a operating temperature commercial 0 ? 70 c t a operating temperature industrial -40 ? 85 c absolute maximum ratings recommended dc operating conditions notes: 1. stresses greater than those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only and functional operation of the device at these or any other conditions above those indicated in the operational sections of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect reliability. 2. compliant with jedec jesd8-5. v dd terminal only. symbol parameter (1) conditions max. unit c in (2,3) input v in = 0v 10 (3) pf capacitance c out (1,2) output v out = 0v 15 pf capacitance capacitance (t a = +25 c, f = 1.0mhz) notes: 1. with output deselected, ( oe v ih ). 2. characterized values, not currently tested. 3. c in for vref is 20pf. note: 1. v ref is only required for hstl or ehstl inputs. v ref should be tied low for lvttl operation. 2. v ih ac component = v ref + 0.4v
18 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 dc electrical characteristics (commercial: v dd = 1.8v 0.10v, t a = 0 c to +70 c;industrial: v dd = 1.8v 0.10v, t a = -40 c to +85 c) symbol parameter min. max. unit i li input leakage current ?10 10 a i lo output leakage current ?10 10 a v oh (3) output logic ?1? voltage, i oh = ?8 ma @v ddq = 2.5v 0.125v (lvttl) v ddq -0.4 ? v i oh = ?8 ma @v ddq = 1.8v 0.1v (ehstl) v ddq -0.4 ? v i oh = ?8 ma @v ddq = 1.5v 0.1v (hstl) v ddq -0.4 ? v v ol output logic ?0? voltage, i ol = 8 ma @v ddq = 2.5v 0.125v (lvttl) ? 0.4v v i ol = 8 ma @v ddq = 1.8v 0.1v (ehstl) ? 0.4v v i ol = 8 ma @v ddq = 1.5v 0.1v (hstl) ? 0.4v v i dd1 (1,2) active v dd current (v dd = 1.8v) i/o = lvttl ? 80 ma i/o = hstl ? 150 ma i/o = ehstl ? 150 ma i dd2 (1, 5) standby v dd current (v dd = 1.8v) i/o = lvttl ? 25 ma i/o = hstl ? 100 ma i/o = ehstl ? 100 ma i ddq (1,2) active v ddq current (v ddq = 2.5v lvttl) i/o = lvttl ? 10 ma (v ddq = 1.5v hstl) i/o = hstl ? 10 ma (v ddq = 1.8v ehstl) i/o = ehstl ? 10 ma notes: 1. both wclk and rclk toggling at 20mhz. 2. data inputs toggling at 10mhz. 3. total power consumed: pt = [(v dd x i dd ) + (v ddq x i ddq )]. 4. outputs are not 3.3v tolerant. 5. the following inputs should be pulled to gnd: wradd, rdadd, waden, fstr, estr, sclk, si, exi, fxi and all data inputs. the following inputs should be pulled to v dd : wen , ren , seni , mrs , tdi, tms and trst . all other inputs are don't care and should be at a known state.
19 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 input pulse levels 0.25 to 1.25v input rise/fall times 0.4ns input timing reference levels 0.75 output reference levels v ddq /2 hstl 1.5v ac test conditions figure 2b. lumped capacitive load, typical derating ac test loads figure 2a. ac test load input pulse levels 0.4 to 1.4v input rise/fall times 0.4ns input timing reference levels 0.9 output reference levels v ddq /2 extended hstl 1.8v ac test conditions input pulse levels gnd to 2.5v input rise/fall times 1ns input timing reference levels v dd /2 output reference levels v ddq /2 2.5v lvttl 2.5v ac test conditions 6715 drw04 50 ? v ddq /2 i/o z 0 = 50 ? 6715 drw04a 6 5 4 3 2 1 20 30 50 80 100 200 capacitance (pf) ? t cd (typical, ns) note: 1. v ddq = 1.5v 0.1v. note: 1. v ddq = 1.8v 0.1v. note: 1. v ddq = 2.5v 0.125v. output enable & disable timing v ih oe v il t oe & t olz 100mv 100mv t ohz 100mv 100mv output normally low output normally high v ol v oh v cc /2 6715 drw05 output enable output disable v cc /2 v cc /2 v cc /2 note: 1. ren is high.
20 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 p r e l i m i n a r y commercial com'l & ind'l (1) idt72p51539l5 idt72p51539l6 IDT72P51549l5 IDT72P51549l6 idt72p51559l5 idt72p51559l6 idt72p51569l5 idt72p51569l6 symbol parameter min. max. min. max. unit f s clock cycle frequency (wclk & rclk) ? 200 ? 166 mhz t a data access time 0.6 3.6 0.6 3.7 ns t clk clock cycle time 5 ? 6 ? ns t clkh clock high time 2.3 ? 2.7 ? ns t clkl clock low time 2.3 ? 2.7 ? ns t ds data setup time 1.5 ? 2.0 ? ns t dh data hold time 0.5 ? 0.5 ? ns t ens enable setup time 1.5 ? 2.0 ? ns t enh enable hold time 0.5 ? 0.5 ? ns t rs reset pulse width 30 ? 30 ? ns t rss reset setup time 15 ? 15 ? ns t rsf reset output status ? 10 ? 10 ns t rsr reset recovery time 10 ? 10 ? ns t olz ( oe - q n) (2) output enable to output in low-impedance 0.6 3.6 0.6 3.7 ns t ohz (2) output enable to output in high-impedance 0.6 3.6 0.6 3.7 ns t oe output enable to data output ready 0.6 3.6 0.6 3.7 ns f c clock cycle frequency (sclk) ? 10 ? 10 mhz t sclk serial clock cycle 100 ? 100 ? ns t sckh serial clock high 45 ? 45 ? ns t sckl serial clock low 45 ? 45 ? ns t sds serial data in setup 20 ? 20 ? ns t sdh serial data in hold 1.2 ? 1.2 ? ns t sens serial enable setup 20 ? 20 ? ns t senh serial enable hold 1.2 ? 1.2 ? ns t sdo sclk to serial data out ? 20 ? 20 ns t seno sclk to serial enable out ? 20 ? 20 ns t sdop serial data out propagation delay 0.6 3.7 0.6 3.7 ns t senop serial enable propagation delay 0.6 3.7 0.6 3.7 ns t pcsf programming complete to status flag ? 7+1 sclk ? 7+1 sclk clock cycles t as address setup 1.5 ? 2.0 ? ns t ah address hold 0.5 ? 0.5 ? ns t wff write clock to full flag ? 3.6 ? 3.7 ns t ref read clock to empty flag ? 3.6 ? 3.7 ns t sts pae / paf strobe setup 1.5 ? 1.5 ? ns t sth pae / paf strobe hold 0.5 ? 0.5 ? ns t qs queue setup 1.5 ? 2.0 ? ns t qh queue hold 0.5 ? 0.5 ? ns t waf wclk to paf flag 0.6 3.6 0.6 3.7 ns t rae rclk to pae flag 0.6 3.6 0.6 3.7 ns t paf write clock to synchronous almost-full flag bus 0.6 3.6 0.6 3.7 ns t pae read clock to synchronous almost-empty flag bus 0.6 3.6 0.6 3.7 ns t paelz (2) rclk to pae flag bus to low-impedance 0.6 3.6 0.6 3.7 ns ac electrical characteristics (commercial: v dd = 1.8v 0.10v, t a = 0 c to +70 c;industrial: v dd = 1.8v 0.10v, t a = -40 c to +85 c; jedec jesd8-a compliant) notes: 1. industrial temperature range product for the 6ns is available as a standard device. all other speed grades available by spec ial order. 2. values guaranteed by design, not currently tested.
21 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 p r e l i m i n a r y ac electrical characteristics (continued) (commercial: v dd = 1.8v 0.10v, t a = 0 c to +70 c;industrial: v dd = 1.8v 0.10v, t a = -40 c to +85 c; jedec jesd8-a compliant) t paehz (2) rclk to pae flag bus to high-impedance 0.6 3.6 0.6 3.7 ns t paflz (2) wclk to paf flag bus to low-impedance 0.6 3.6 0.6 3.7 ns t pafhz (2) wclk to paf flag bus to high-impedance 0.6 3.6 0.6 3.7 ns t ffhz (2) wclk to full flag/input ready to high-impedance 0.6 3.6 0.6 3.7 ns t fflz (2) wclk to full flag/input ready to low-impedance 0.6 3.6 0.6 3.7 ns t eflz (2) rclk to empty flag/output ready flag to low-impedance 0.6 3.6 0.6 3.7 ns t efhz (2) rclk to empty flag/output ready flag to high-impedance 0.6 3.6 0.6 3.7 ns t fsync wclk to paf bus sync to output 0.6 3.6 0.6 3.7 ns t fxo wclk to paf bus expansion to output 0.6 3.6 0.6 3.7 ns t esync rclk to pae bus sync to output 0.6 3.6 0.6 3.7 ns t exo rclk to pae bus expansion to output 0.6 3.6 0.6 3.7 ns t pr rclk to packet ready flag 0.6 3.6 0.6 3.7 ns t skew1 skew time between rclk and wclk for ff / ir and ef / or 5? 6?ns t skew2 skew time between rclk and wclk for paf and pae 5? 6?ns t skew3 skew time between rclk and wclk for paf [0:7] and pae [0:7] 5 ? 6 ? ns t skew4 skew time between rclk and wclk for pr and ef / or 5? 6?ns t xis expansion input setup 1.5 ? 2.0 ? ns t xih expansion input hold 0.5 ? 0.5 ? ns t ppms parallel programming setup 15 ? 15 ? ns t ppmh parallel programming hold 5 ? 5 ? ns commercial com'l & ind'l (1) idt72p51539l5 idt72p51539l6 IDT72P51549l5 IDT72P51549l6 idt72p51559l5 idt72p51559l6 idt72p51569l5 idt72p51569l6 symbol parameter min. max. min. max. unit notes: 1. industrial temperature range product for the 6ns is available as a standard device. all other speed grades available by spec ial order. 2. values guaranteed by design, not currently tested.
22 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 functional description master reset a master reset is performed by toggling the mrs input from high to low to high. during a master reset all internal multi-queue device setup and control registers are initialized and require programming either serially by the user via the serial port, or via parallel programming or by using the default settings. refer to figure 4, device programming hierarchy for the programming hierarchy structure. during a master reset the state of the following inputs determine the functionality of the part, these pins should be held high or low. pkt ? packet mode fm ? flag bus mode bm [3:0] ? bus matching options mast ? master device id0, 1, 2 ? device id dfm ? programming mode, serial or default df ? offset value for pae and paf once a master reset has taken place, the device must be programmed either serially or via the default method before any read/write operations can begin. see figure 37, master reset for relevant timing. programming mode captured on the rising of /mrs the programming mode signals (qsel 0 &1, default) are captured. once the programming mode signals are captured (latched), refer to table 1 for details. it will then require a number of clock cycles for the device to complete the configuration. configuration completion is indicated when the seno signal transitions from high to low. the configuration completion indication is consistent with the previous mq device. qsel0 qsel1 default mode (dfm) see table 2 for definition of value 6715 drw06 mrs see table 2 for definition of value dfm = low for serial programming mode figure 3. reference signals programmable parameter serial programming parallel programming default programming number of queues any number from 1 to 32 any number from 1 to 32 16 or 32 queue depth each queue depth can be the total memory is evenly divided the total memory is evenly divided individualized across the queues across the queues pae / paf offset value programmable to any value fixed value fixed value bus matching any combination of x9 or x18 or x36 can any combination of x9 or x18 or x36 any combination of x9, x18, or x36 can be selected using the bm[3:0] bits. can be selected using the bm[3:0] bits. be selected using the bm[3:0] bits i/o voltage lvttl, ehstl, hstl lvttl, ehstl, hstl lvttl, ehstl, hstl table 1 device programming mode comparison qsel 1 qsel 0 0 m r s default mode (dfm) queue programming method 6715 drw07 0 0 reserved 1 0 0 reserved 0 1 0 reserved 1 1 0 serial programming mode 0 0 1 enables the user to program the number of queues using the write address bus 1 0 1 enables the user to program the number of queues using the read address bus 0 1 1 selects 16 queue 1 1 1 selects 32 queue table 2 setting the queue programming mode during master reset
23 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 serial programming the multi-queue flow-control device is a fully programmable device, provid- ing the user with flexibility in how queues are configured in terms of the number of queues, depth of each queue and position of the paf / pae flags within respective queues. all user programming is done via the serial port after a master reset has taken place. internally the multi-queue device has setup registers which must be serially loaded, these registers contain values for every queue within the device, such as the depth and pae / paf offset values. the idt72p51539/72p51549/72p51559/72p51569 devices are capable of up to 32 queues and therefore contain 128 sets of registers for the setup of each queue. during a master reset if the dfm (default mode) input is low, then the device will require serial programming by the user. it is recommended that the user utilize a ?c? program provided by idt, this program will prompt the user for all information regarding the multi-queue setup. the program will then generate a serial bit stream which should be serially loaded into the device via the serial port. for the idt72p51539/72p51549/72p51559/72p51569 devices the serial programming requires a total number of serially loaded bits per device, (sclk cycles with seni enabled), calculated by: 19+(qx72) where q is the number of queues the user wishes to setup within the device. once the master reset is complete and mrs is high, the device can be serially loaded. data present on the si (serial in), input is loaded into the serial port on a rising edge of sclk (serial clock), provided that seni (serial in enable), is low. once serial programming of the device has been successfully completed the device will indicate this via the seno (serial output enable) going active, low. upon detection of completion of programming, the user should cease all programming and take seni inactive, high. note, seno follows seni once programming of a device is complete. therefore, seno will go low after programming provided seni is low, once seni is taken high again, seno will also go high. the operation of the so output is similar, when programming of a given device is complete, the so output will follow the si input. if devices are being used in expansion configuration the serial ports of devices should be cascaded. the user can load all devices via the serial input port control pins, si & seni , of the first device in the chain. again, the user may utilize the ?c? program to generate the serial bit stream, the program prompting the user for the number of devices to be programmed. the seno and so (serial out) of the first device should be connected to the seni and si inputs of the second device respectively and so on, with the seno & so outputs connecting to the seni & si inputs of all devices through the chain. all devices in the chain should be connected to a common sclk. the serial output port of the final device should be monitored by the user. when seno of the final device goes low, this indicates that serial programming of all devices has been successfully com- pleted. upon detection of completion of programming, the user should cease all programming and take seni of the first device in the chain inactive, high. as mentioned, the first device in the chain has its serial input port controlled by the user, this is the first device to have its internal registers serially loaded by the serial bit stream. when programming of this device is complete it will take its seno output low and bypass the serial data loaded on the si input to its so output. the serial input of the second device in the chain is now loaded with the data from the so of the first device, while the second device has its seni input low. this process continues through the chain until all devices are programmed and the seno of the final device (or master device, id = '000') goes low. once all serial programming has been successfully completed, normal operations, (queue selections on the read and write ports) may begin. when connected in expansion configuration, the idt72p51539/72p51549/72p51559/ 72p51569 devices require a total number of serially loaded bits per device to complete serial programming, (sclk cycles with seni enabled), calculated by: n[19+(qx72)] where q is the number of queues the user wishes to setup within the device, where n is the number of devices in the chain. see figure 42, serial port connection and figure 43, serial programming for connection and timing information. default programming during a master reset if the dfm (default mode) input is high the multi- queue device will be configured for default programming, (serial programming is not permitted). default programming provides the user with a simpler, however limited means to setup the multi-queue flow-control device, rather than using the serial programming method. the default mode will configure a multi- queue device with the maximum number of queues setup, and the available memory allocated equally between the queues. the values of the pae / paf offsets is determined by the state of the df (default) pin during a master reset. for the idt72p51539/72p51549/72p51559/72p51569 devices the default mode will setup 32 queues, each queue being 512 x 36, 1024 x 36, 2048 x36, and 4096 x 36 deep respectively. for each device, the value of the pae / paf offsets is determined at master reset by the state of the df input. if df is low then both the pae & paf offset will be 8, if high then the value is 128. when configuring the idt72p51539/72p51549/72p51559/72p51569 de- vices in default mode the user simply has to apply wclk cycles after a master reset, until seno goes low, this signals that default programming is complete. these clock cycles are required for the device to load its internal setup registers. when a single multi-queue device is used, the completion of device program- ming is signaled by the seno output of a device going from high to low. note, that seni must be held low when a device is setup for default programming mode. when multi-queue devices are connected in expansion configuration, the seni of the first device in a chain can be held low. the seno of a device should connect to the seni of the next device in the chain. the seno of the final device is used to indicate that default programming of all devices is complete. when the master (id='000') seno goes low normal operations may begin. again, all devices will be programmed with their maximum number of queues and the memory divided equally between them. please refer to figure 38, default programming . parallel programming during a master reset cycle (i.e. the mrs signal transitions from high to low then low to high) if the dfm (default mode) input signal is high and the qsel 1 input signal is low the multi-queue flow control device is configured for parallel programming. parallel programming enables the number of queues within the device to be set through either the write address (wradd) bus or read address (rdadd) bus after the master reset cycle. within parallel programming mode the multi-queue (mq) device program- mable parameters are; number of queues, queue depth, pae / paf flag offset value, bus matching and the i/o voltage level. as previously indicated, the number of queues are configured using the write or read address bus, however bus matching is set during the master reset cycle. the value that is set during the master reset cycle is determined by the bus matching (bm) bits. for the idt72p51539/72p51549/72p51559/72p51569 devices in parallel programming mode the value of the pae / paf offsets at master reset is determined by the state of the df input. if df is low then both the pae & paf offset will be 8, if high then the value is 128. when configuring the idt72p51539/72p51549/72p51559/72p51569 devices in parallel programming mode the user simply has to apply wclk cycles after a master reset, until seno goes low, this signals that parallel programming is complete. these clock cycles are required for the device to load its internal setup registers. when a single multi-queue device is used, the completion of device programming is signaled by the seno output of a device going from high to low. note, that seni must be held low when a device is setup for parallel programming mode.
24 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 4. device programming hierarchy master reset cycle device programming mode selected device operating mode selected (packet mode) (fifo mode) expansion device type selected master device 6715 drw08 parallel queue programming serial programming default programming slave device (idt mode) (fwft mode) (idt mode) (fwft mode) when multi-queue devices are connected in an expansion configuration, the seni signal of the first device in a chain must be held low. the seno signal of a device should connect to the seni of the next device in the chain. the seno of the final device is used to indicate that the programming of all devices is complete. when the master device (id=?000') seno signal goes low the internal programming is complete and queue write/read operation may begin. please refer to figure 39, parallel programming for signal timing details. programming hierarchy configuring the device is a 2 stage sequence. the first stage is to set the expansion device type, the desired programming mode and the device operating mode during the master reset cycle (i.e. on the rising edge of master reset ( mrs )). the second stage is to set values such as pae / paf , number of queues, queue depth, etc. using the programming mode (serial, parallel, default) selected in stage 1. refer to figure 4, device programming hierarchy .
25 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 operational modes packet mode fifo mode idt standard fwft mode idt standard fwft mode mode mode configuration signals modes pkt fwft low low fifo mode - idt standard mode low high fifo mode - fwft high low packet mode - idt standard mode high high packet mode - fwft queue description configuration of the idt multi-queue flow-control device the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow-con- trol devices can be configured in distinct modes, namely packet mode, fifo 6715 drw09 rclk ef qout ren all available words have been read, the queue is empty the queue has no available words for reading figure 5. idt standard mode illustrated (read port) table 3 mode configuration 6715 drw10 rclk or qout data bus ren a word is available for reading previous word figure 6. first word fall through (fwft) mode illustrated (read port) in fwft mode the read port signal ef / or is configured for output ready ( or ) signaling. or is an active low signal. when or is high, it signifies there is no available word to read. on the write port, signal ff / ir is configured for input ready ( ir ) signaling. ir is an active low signal. when ir is low it signifies the write port is ready for writing into the selected queue. refer to figure 6, fwft mode illustrated (read port) . in idt standard mode the read port signal ef / or is configured for empty flag ( ef ) signaling. ef is an active low signal. when ef is low it signifies the selected (present) queue is empty. on the write port, signal ff / ir is configured for full flag ( ff ) signaling. ff is an active low signal. when ff is low it signifies the selected (present) queue is full. refer to figure 5, idt standard mode illustrated (read port) . mode, standard mode, and fwft mode. to configure the device operational mode set the configuration pins (pkt, fwft ) as indicated in table 3, mode configuration.
26 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 standard mode operation write queue selection and write operation (standard mode) the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow-con- trol devices can be configured up to a maximum of 32 queues which data can be written via a common write port using the data inputs (din), write clock (wclk) and write enable ( wen ). the queue to be written is selected by the address present on the write address bus (wradd) during a rising edge on wclk while write address enable (waden) is high. the state of wen does not impact the queue selection. the queue selection requires 4 wclk cycle. all subsequent data writes will be to this queue until another queue is selected. standard mode operation is defined as individual words will be written to the device as opposed to packet mode where complete packets are written. the write port is designed such that 100% bus utilization can be obtained. this means that data can be written into the device on every wclk rising edge including the cycle that a new queue is being addressed. changing queues requires 4 wclk cycles on the write port (see figure 44, write queue select, write operation and full flag operation ). waden goes high signaling a change of queue (clock cycle ?a?). the address on wradd at that time determines the next queue. data presented during that cycle (?a?) and the next cycle (?b? and ?c?), will be written to the active (old) queue, provided wen is low. if wen is high (inactive) for these 3 clock cycles, data will not be written in a queue. the write port discrete full flag will update to show the full status of the newly selected queue (q x ) at this last cycle?s rising edge (?c?). data present on the data input bus (din), can be written into the newly selected queue (q x ) on the rising edge of wclk on the third cycle (?d?) following a change of queue, provided wen is low and the new queue is not full. if the newly selected queue is full at the point of its selection, any writes to that queue will be prevented. data cannot be written into a full queue. refer to figure 44, write queue select, write operation and full flag operation , figure 46, write operations in first word fall through for timing diagrams and figure 47, full flag timing in expansion configuration for timing diagrams. table 4 write address bus, wradd[7:0] operation wclk waden fstr wradd[7:0] write queue select 10 01 device select (compared to id0,1,2) write queue address (4 bits = 16 queues 5 bits = 32 queues) 765 432 10 765 4 3210 device select (compared to id0,1,2) x status word address paf n quadrant select q0 : q7 paf 0 : paf 7 status word address queue status on paf n bus 0000 0001 0010 0011 q8 : q15 paf 0 : paf 7 q16 : q23 paf 0 : paf 7 q24 : q31 paf 0 : paf 7 6715 drw11
27 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 read queue selection and read operation (standard mode) the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow-con- trol devices can be configured up to a maximum of 32 queues which data can be read via a common read port using the data outputs (qout), read clock (rclk) and read enable ( ren ). an output enable, oe control pin is also provided to allow high-impedance selection of the qout data outputs. the multi- queue device read port operates in standard idt mode and ?first word fall through? mode (see figure 46, write operations in first word fall through ). the queue to be read is selected by the address presented on the read address bus (rdadd) during a rising edge on rclk while read address enable (raden) is high. the state of ren does not impact the queue selection. the queue selection requires 1 rclk cycles. all subsequent data reads will be from this queue until another queue is selected. standard mode operation is defined as individual words will be read from the device. the read port is designed such that 100% bus utilization can be obtained. this means that data can be read out of the device on every rclk rising edge including the cycle that a new queue is being addressed. changing queues requires a minimum of four rclk cycles on the read port (see figure 48, read queue select, read operation ). raden goes high signaling a change of queue (clock cycle ?d?). the address on rdadd at that time determines the next queue. data presented during that cycle (?d?) will be read at ?d? (+ t a ), and the next cycle (?e?), can continue to be read from the active (old) queue (q p ), provided ren is active low. if ren is high (inactive) for these two clock cycles, data will not be read from the previous queue. the next cycle?s rising edge (?f?), the read port discrete empty flag will update to show the empty status of the newly selected queue (q f ). the internal pipeline is also loaded at this time (?f?) with the last word from the previous (old) queue (q f ) operation rclk raden estr rdadd[7:0] read queue select 10 01 device select (compared to id0,1,2) read queue address (4 bits = 16 queues 5 bits = 32 queues) 765 43210 765 4 3210 device select (compared to id0,1,2) x status word address pae n/ pr n quadrant select status word address queue status on pae n/ pr n bus 6715 drw12 q0 : q7 paf 0 : paf 7 0000 0001 0010 0011 q8 : q15 paf 0 : paf 7 q16 : q23 paf 0 : paf 7 q24 : q31 paf 0 : paf 7 table 5 read address bus, rdadd[7:0]
28 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 as well as the next word from the new queue (q f ). both of these words will fall through to the output register (provided the oe is asserted) consecutively (cycles ?f? and ?g? respectively) following the selection of the new queue regardless of the state of ren , unless the new queue (q f ) is empty. if the newly selected queue is empty, any reads from that queue will be prevented. data cannot be read from an empty queue. remember that oe allows the user to place the data output bus (qout) into high-impedance and the data can be read in to the output register regardless of oe . refer to table 5, for read address bus arrangement. also, refer to figures 13, 15, and 16 for read queue selection and read port operation timing diagrams. packet mode operation the packet mode operation provides the capability where, user defined packets or frames can be written to the device as opposed to standard mode where individual words are written. for clarification, in packet mode, a packet can be written to the device with the starting location designated as transmit start of packet (tsop) and the ending location designated as transmit end of packet (teop). in conjunction, a packet read from the device will be designated as receive start of packet (rsop) and a receive end of packet (reop). the minimum size for a packet is four words (sop, two words of data and eop). the 4 words must be the largest word that is configured. for example in a x18 to x9 bus matching configuration the four words must be x18 bit words. the almost empty flag bus becomes the ?packet ready? pr flag bus when the device is configured for packet mode. valid packets are indicated when both pr and or are asserted. write queue selection and write operation (packet mode) changing queues requires 4 wclk cycles on the write port (see figure 54, writing in packet mode during a queue change ). waden goes high signaling a change of queue (clock cycle ?b? or ?i?). the address on wradd at the rising edge of wclk determines the next queue. data presented on din during that cycle (?b? or ?i?) and the next cycle (?c? or ?j?) can continue to be written to the active (old) queue (q a or q b respectively), provided wen is low (active). if wen is high (inactive) for these two clock cycles (h), data will not be written in to the previous queue (q a ). the write port discrete full flag will update to show the full status of the newly selected queue (q b ) at this last cycle?s rising edge (?d? or ?k?). data values presented on the data input bus (din), can be written into the newly selected queue (q x ) on the rising edge of wclk on the third cycle (?e?) following a request for change of queue, provided wen is low (active) and the new queue is not full. if a selected queue is full ( ff is low), then writes to that queue will be prevented. note, data cannot be written into a full queue. refer to figure 54, writing in packet mode during a queue change for timing diagrams. read queue selection and read operation (packet mode) changing queues requires 4 rclk cycles on the read port (see figure 55, reading in packet mode during a queue change ). raden goes high signaling a change of queue (clock cycle ?b? or ?i?). the address on rdadd at the rising edge of rclk determines the queue. as illustrated in figure 55 during cycle (?b? or ?i?), and the next cycle (?c? or ?j?) data can continue to be read from the active (old) queue (q a or q b respectively), provided both ren and oe are low (active) simultaneously with changing queues. in applications where the multi-queue flow-control device is connected to a shared bus, an output enable, oe control pin is also provided to allow high-impedance selection of the data outputs (qout). refer to figure 55, reading in packet mode during a queue change as well as figure 38, 39, 40, 41, and 42 for timing diagrams and table 5, for read address bus arrangement. note, the almost empty flag bus becomes the ?packet ready? flag bus when the device is configured for packet ready mode. expanding up to 256 queues or providing deeper queues expansion can take place only in idt standard mode. in the 32 queue multi- queue device, the wradd address bus is 8 bits wide. the 7 least significant bits (lsbs) are used to address one of the 32 available queues within a single multi-queue device. the most significant bit (msbs) is used when a device is connected in expansion configuration with up to 8 devices connected in width expansion, each device having its own bit address. when logically expanded with multiple parts, each device is statically setup with a unique chip id code on the id pins, id0, id1, and id2. a device is selected when the most significant bit of the wradd address bus matches the id code. the maximum logical expansion is 256 queues (32 queues x 8 devices). note: the wradd bus is also used in conjunction with fstr (almost full flag bus strobe), to address the almost full flag bus during direct mode of operation. refer to table 4, for write address bus arrangement. also, refer to figure 47, full flag timing expansion configuration , figure 51, output ready flag timing (in expansion configuration) , and figure 67, expansion using id codes , for timing diagrams.
29 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 switching queues on the write port the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow- control devices can be configured up to a maximum of 32 queues. data is written into a queue using the data input (din) bus, write clock (wclk) and write enable ( wen ) signals. selecting a queue occurs by placing the queue address on the write address bus (wradd) during a rising edge of wclk while write address enable (waden) is high. for reference, the state of write enable ( wen ) is a ?don?t care? during a queue selection. wen has significance during the queue mark operation. selecting a queue requires 4 wclk cycles. refer to figure 7, write port switching queues signal sequence . wclk qs-1 queue address queue address qs0 qs1 qs2 qs3 wradd waden 6715 drw13 queue switch cycle figure 7. write port switching queues signal sequence wclk wen din 6715 drw14 pq queue switch cycles * waden pq pq pq nq nq figure 8. switching queues bus efficiency the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow- control device supports changing (switching) queues every four (4) clock cycles. to switch from the present queue (pq) to another queue requires a queue address to be placed on the write address bus (wradd) bus and a rising edge of write clock (wclk) and write address enable (waden) is high. there are no restrictions as to the order to which queues are selected or switched into or out of. for maximum efficiency, during the 4 clock cycles required to switch queues the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow-control device can continue to write into the present queue (pq). the present queue is defined as the current selected queue. refer to figure 8, switching queues bus efficiency . notes: 1. pq = present queue nq = next queue * requires 4 clock cycles to switch queues.
30 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 queue switch idt mode fwft mode cycle qs-1 queue switch initiated, rewrite/no rewrite selection queue switch initiated, rewrite/no rewrite selection qs0 queue mark / un-mark queue mark / un-mark qs1 ?? qs2 ? paf signal updated for next queue (nq) ? paf signal updated for next queue (nq) ? packet ready ( pr ) signal updated ? packet ready ( pr ) signal updated ? full flag ( ff ) updated for nq ? ir flag updated for nq qs3 start of write data operation start of write data operation table 6 write queue switch operation 6715 drw15 wclk wen din waden rclk ren raden qout pq pq pq pq pq nq pq pq pq pq pq nq figure 9. simultaneous queue switching the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow- control device supports writing and reading from either the same queue of from different queues. the device also supports simultaneous queue switching on the write and read ports. the simultaneous queue switching may occur with either the write clock and read clock synchronous or asynchronous to each other. for reference refer to figure 9, simultaneous queue switching . the multi-queue flow-control device requires 4 clock cycles to switch queues on the write port. refer to table 6, write queue switch operation for a detailed description of each queue switch clock cycle.
31 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 switching queues on the read port the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow- control devices can be configured up to a maximum of 32 queues. data is read from a queue using the data output (qout) bus, read clock (rclk) and read enable (ren) signals. selecting a queue on the read port occurs by placing the queue address on the read address bus (rdadd) during a rising edge of rclk while read address enable (raden) is high. for reference, the state of read enable (ren) is a ?don?t care? during a read port queue selection. ren has significance during the queue mark operation. selecting a queue requires 4 wclk cycles. refer to figure 10, read port switching queues signal sequence . rclk qs-1 queue address queue address qs0 qs1 qs2 qs3 rdadd raden 6715 drw16 queue switch cycle figure 11. switching queues bus efficiency figure 10. read port switching queues signal sequence the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow- control device supports changing (switching) queues every four (4) clock cycles. to switch from the present queue (pq) to another queue requires a queue address to be placed on the read address bus (rdadd) bus and a rising edge of read clock (rclk) and read address enable (raden) is high. there are no restrictions as to the order to which queues are selected or switched into or out of. for maximum efficiency, during the 4 clock cycles required to switch queues the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow-control device can continue to read from the present queue (pq). the present queue is defined as the current selected queue. refer to figure 11, switching queues bus efficiency. rclk ren qout 6715 drw17 pq queue switch cycles raden pq pq pq nq nq note: pq = present queue nq = next queue
32 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 simultaneous queue switching the idt 72p51539/72p51549/72p51559/72p51569 multi-queue flow- control device supports reading and writing from either the same queue of from different queues. the device also supports simultaneous queue switching on the read and write ports. the simultaneous queue switching may occur with either the read clock and write clock synchronous or asynchronous to each other. for reference refer to figure 12, simultaneous queue switching . 6715 drw18 wclk wen din waden rclk ren raden qout pq pq pq pq pq nq pq pq pq pq nq figure 12. simultaneous queue switching table 7 read queue switch operation pq nq supported comment not marked not marked yes queue switch is ignored not marked marked yes add mark to current queue marked not marked, no reread not allowed marked not marked, reread yes remove mark marked marked, no reread not allowed marked marked, reread yes keep mark table 8 same queue switch legend: pq = present queue nq = next queue queue switch idt mode fwft mode cycle qs-1 queue switch initiated, re-read/no re-read selection queue switch initiated, re-read/no re-read selection qs0 queue mark / un-mark queue mark / un-mark qs1 ?? qs2 ? pae signal updated for next queue (nq) ? pae signal updated for next queue (nq) ? packet ready ( pr ) signal updated ? packet ready ( pr ) signal updated ? empty flag ( ef ) updated for nq qs3 start of read data operation ? start of read data operation ? or updated for nq the multi-queue flow-control device requires 4 clock cycles to switch queues on the read port, refer to table 7, read queue switch operation for a detailed description of each queue switch clock cycles.
33 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 queue marking the overall intent of the mark function is to provide the ability to either re- write and/or re-read information that is stored into a queue. a queue can be marked by either the write port or the read port. the mark operation is port independent. the same queue can be marked by the write port and the read port simultaneously. only the active queue can be marked, multiple queues can not be marked by a port. a port (write or read) may only designate one queue marked at a time. upon a queue switch a decision must be made as to whether to return to the marked location or the last access address. mark and rewrite/ mark and reread the mark functionality operates in any mode combination (packet mode, idt standard mode, fifo mode, fwft mode), fwft). queues on the write port are marked using the wclk & waden signals. queues on the read port are marked using the rclk and raden signals. refer to the following timing diagrams for additional queue mark details. refer to figure 13 through 18 for further information. 6715 drw29 present queue (pq) qs a qs-1 wclk e qs3 b qs0 c qs1 d qs2 wen waden din next queue (nq) ? @qs-1, if wen =0 and waden=1, pq will be updated in qs0,1, and 2, and nq data will be written in qs3. ? @qs-1, if wen_n=1 and waden=1, there is no update for pq during qs0-qs2. next time pq is switched back, data will be written in to last update location (rewrite). ? @qs0, waden status is used to determine if a ?mark? is requested for nq. if waden=1 in qs0, nq will be marked. in fifo mode, t he first nq position after qs is marked (latch wfcr values before qs3), data can?t be read out beyond this location. in packet mode, every sop position is marked till next sop comes, then the mark moves to new position. ? @qs0, if waden=0, nq is not marked. figure 13. mark and re-write sequence ? @qs-1 (a), if ren =0 and raden=1, (request for a queue switch occurs raden=1 and simultaneously reading from a queue) the queue address register will be updated in qs2, and the data from the next queue (nq) will be available in qs3. ? @qs-1, if ren =1 and raden=1, (request for a queue switch occurs raden =1) the queue address register will be updated in qs2. the present queue address pointer will not increment during qs0-qs2. the next time pq is selected, the data will be from the last addressed location. ? @qs0, raden status is used to determine if a ?mark? is requested for nq. if raden=1 in qs0, nq will be mark. in fifo mode, firs t nq position after qs is marked (latch rfcr values before qs3), data can?t overwrite this location. in packet mode, every sop position is marked till next sop comes, then the mark moves to new position. figure 14. mark and re-read sequence 6715 drw30 qs present queue a qs-1 e qs3 b qs0 c qs1 d qs2 rclk ren raden qout next queue
34 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 15. marking a queue in packet mode - write queue mark wclk w r i t e queu e select cycle wr i t e queue mark cycle waden write queue mark this rising edge of wclk is the start of the 1st cycle b a waden acti on 1 1 selects a queue & mark the queue 1 0 selects a queue b a 6715 drw31 figure 16. marking a queue in packet mode - read queue mark 6715 drw32 rclk read queue mark cycle ra den b a raden acti on 1 1 1 0 b a read queue mark this rising edge of rclk is the start of the 1st cycle selects a queue & mark the queue selects a queue read queue select cycle
35 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 17. un-marking a queue in packet mode - write queue un-mark 6715 drw33 wclk write queue select cycle waden write queue un-m a rk thi s ri si ng edge of wclk is the start of the 1 st cycle. b a waden acti on 1 1 selects a queue and mark the queue 1 0 selects a queue and remove mark b a write queue mark cycle figure 18. un-marking a queue in packet mode - read queue un-mark 6715 drw34 rclk read queue select cycle raden r e a d queue u n - m a rk thi s ri si ng edge of rclk is the start of the 1 st cycle. b a raden acti on 1 1 selects a queue and mark the queue 1 0 selects a queue & remove mark b a read queue mark cycle
36 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 mark operational notes: in packet mode write port - marking a location can only occur during a queue switch cycle - there is only one marked location within a queue - only 1 packet can be marked at a time within a queue. - in packet mode, for a full packet re-write the mark must occur at the sop location of the packet. - in packet mode data can be re-written from the mark - in packet mode the mark moves from packet to packet within a queue when the next packet is written. - the sequence to move the mark to the next packet is, first an eop must occur, then a valid write occurs. 6714 drwx35 eop sop queue mark mark move sequence read port - marking can only occur during a queue switch cycle - only 1 packet can be marked at a time within a queue. - in packet mode, mark is moved to a location of the packet. - in packet mode the mark can be moved from sop (start of packet) to sop (start of packet) within the queue by a valid read.
37 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 19. marking a queue in fifo mode - write queue mark wclk w r i t e queu e select cycle wr i t e queue mark cycle waden w ri t e queue m a rk thi s ri si ng edge of wclk is the start of the 1 st cycl e b a 6715 drw36 waden acti on 1 1 selects the queue and mark the queue 1 0 selects a queue b a figure 20. marking a queue in fifo mode - read queue mark thi s ri si ng edge of rclk is the start 1 st cycl e b a 6715 drw37 acti on 1 1 selects the queue and mark the queue 1 0 selects a queue b a rclk read queue select cycle raden read queue mark of the raden read queue mark cycle mark operational notes: in fifo mode write port - marking can only occur during a queue switch cycle - the entire queue is marked at a time. - in idt standard/fwft mode, mark is used to mark the first location of the queue. - in idt standard/fwft mode the mark can not be moved within the queue. read port - marking can only occur during a queue switch cycle - only the first location of the queue can be marked in standard /fwft mode. - in idt standard mode the mark can not be moved location to location within the queue.
38 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 21. un-marking a queue in fifo mode - write queue un-mark thi s ri si ng edge of w c l k i s t he start 1 st cycl e b a 6715 drw38 acti on 1 0 selects a queue and un-mark the queue b a wclk write queue select cycle waden write queue un-mark of the waden write queue mark cycle un-marking a queue un-marking a queue in fifo mode figure 22. un-marking a queue in fifo mode - read queue un-mark thi s ri si ng edge of rclk is the start 1 st cycl e b a 6715 drw39 acti on 1 0 selects a queue and un-mark the queue b a rclk read queue select cycle raden read queue un-mark of the raden read queue mark cycle un-mark operational notes: in fifo mode write port - un-marking can only occur during a queue switch cycle. - in fifo mode, un-marking a queue can be accomplished by either switching to the same queue or switching to another queue. - note only 1 queue can be marked at any given time. - in standard/fifo mode the mark can not be moved location to location within the queue. read port - un-marking can only occur during a queue switch cycle. - in standard/fifo mode, un-marking a queue can be accomplished by either switching to the same queue or switching to another queue. - note only 1 queue can be marked at any given time. - in standard/fifo mode the mark can not be moved location to location within the queue.
39 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 leaving a mark active during a queue switch the value of wen for the write port and ren for the read port determines whether the mark remains active or is de-activated. figure 23. leaving a mark active on the write port 6715 drw40 wclk write queue select cycle leaving a mark active on the write port leave the mark (a rewrite request) write queue mark cycle waden wen figure 24. leaving a mark active on the read port 6715 drw41 rclk read queue select cycle leaving a mark active on the read port leave the mark (a re-read request) read queue mark cycle raden ren
40 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 25. inactivating a mark on the write port active 6715 drw42 wclk write queue select cycle inactivating a mark on the write port inactivate the write port mark (no re-write) write queue mark cycle waden wen figure 26. inactivating a mark on the read port active 6715 drw43 rclk read queue select cycle inactivating a mark on the read port inactivate the read port mark (no re-read) read queue mark cycle raden ren inactivating a mark during a queue switch the value of wen for the write port and ren for the read port determines whether the mark remains active or is de-activated.
41 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 6715 drw44 1st cycle action wen (active low) no operation 0 0 0 0 selects a queue 0 1 0 1 no operation 1 0 1 0 no operation 1 1 1 1 2nd cycle waden (active low) wen (active low) waden (active low) write cycle 6715 drw45 1st cycle action ren (active low) no operation 0 0 0 0 selects a queue 0 1 0 1 no operation 1 0 1 0 no operation 1 1 1 1 2nd cycle raden (active low) ren (active low) raden (active low) read cycle
42 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 flag description paf n flag bus operation the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow-con- trol device can be configured for up to 32 queues, each queue having its own almost full status. an active queue has its flag status output to the discrete flags, ff and paf , on the write port. queues that are not selected for a write operation can have their paf status monitored via the paf n bus. the paf n flag bus is 8 bits wide, so that 8 queues at a time can have their status output to the bus. if 9 or more queues are setup within a device then there are 2 methods by which the device can share the bus between queues, ?direct? mode and ?polled? mode depending on the state of the fm (flag mode) input during a master reset. if 8 or less queues are setup within a device then each will have its own dedicated output from the bus. if 8 or less queues are setup in single device mode, it is recommended to configure the paf n bus to polled mode as it does not require using the write address (wradd). full flag operation the multi-queue flow-control device provides a single full flag output, ff . the ff flag output provides a full status of the queue currently selected on the write port for write operations. internally the multi-queue flow-control device monitors and maintains a status of the full condition of all queues within it, however only the queue that is selected for write operations has its full status output to the ff flag. this dedicated flag is often referred to as the ?active queue full flag?. when queue switches are being made on the write port, the ff flag output will switch to the new queue and provide the user with the new queue status, on the 3rd cycle after a new queue selection is made. the user then has a full status for the new queue one cycle ahead of the wclk rising edge that data can be written into the new queue. that is, a new queue can be selected on the write port via the wradd bus, waden enable and a rising edge of wclk. on the 4th rising edge of wclk, the ff flag output will show the full status of the newly selected queue. on the forth rising edge of wclk following the queue selection, data can be written into the newly selected queue provided that data and enable setup & hold times are met. note, the ff flag will provide status of a newly selected queue three wclk cycle after queue selection, which is one cycle before data can be written to that queue. this prevents the user from writing data to a queue that is full, (assuming that a queue switch has been made to a queue that is actually full). the ff flag is synchronous to the wclk and all transitions of the ff flag occur based on a rising edge of wclk. internally the multi-queue device monitors and keeps a record of the full status for all queues. it is possible that the status of a ff flag maybe changing internally even though that flag is not the active queue flag (selected on the write port). a queue selected on the read port may experience a change of its internal full flag status based on read operations. see figure 44, write queue select, write operation and full flag operation and figure 47, full flag timing in expansion configuration for timing information. expansion configuration - full flag operation when multi-queue devices are connected in expansion configuration the ff flags of all devices should be connected together, such that a system controller monitoring and managing the multi-queue devices write port only looks at a single ff flag (as opposed to a discrete ff flag for each device). this ff flag is only pertinent to the queue being selected for write operations at that time. remember, that when in expansion configuration only one multi-queue device can be written to at any moment in time, thus the ff flag provides status of the active queue on the write port. this connection of flag outputs to create a single flag requires that the ff flag output have a high-impedance capability, such that when a queue selection is made only a single device drives the ff flag bus and all other ff flag outputs connected to the ff flag bus are placed into high-impedance. the user does not have to select this high-impedance state, a given multi-queue flow-control device will automatically place its ff flag output into high-impedance when none of its queues are selected for write operations. when queues within a single device are selected for write operations, the ff flag output of that device will maintain control of the ff flag bus. its ff flag will simply update between queue switches to show the respective queue full status. the multi-queue device places its ff flag output into high-impedance based on the 1-3 bit id code (1 if two multi-queue are configured with a maximum total of 256 queues, 2 if four devices are used totalling a maximum of 256 queues, and 3 if there are up to eight devices with a maximum total of 256 queues) found in the 1-3 most significant bits of the write queue address bus, wradd. if the 1-3 most significant bits of wradd match the 1-3 bit id code setup on the static inputs, id0, id1 and id2 then the ff flag output of the respective device will be in a low-impedance state. if they do not match, then the ff flag output of the respective device will be in a high-impedance state. see figure 47, full flag timing in expansion configuration for details of flag operation, including when more than one device is connected in expansion. empty or output ready flag operation ( ef / or ) the multi-queue flow-control device provides a single empty or output ready flag output, ef / or . the or provides an empty status or data output ready status for the data word currently available on the output register of the read port. the rising edge of an rclk cycle that places new data onto the output register of the read port, also updates the or flag to show whether or not that new data word is actually valid. internally the multi-queue flow-control device monitors and maintains a status of the empty condition of all queues within it, however only the queue that is selected for read operations has its output ready (empty) status output to the or flag, giving a valid status for the word being read at that time. the nature of the first word fall through operation means that when the last data word is read from a selected queue, the or flag will go high on the next enabled read, that is, on the next rising edge of rclk while ren is low. when queue switches are being made on the read port, the or flag will switch to show status of the new queue in line with the data output from the new queue. when a queue selection is made the first data from that queue will appear on the qout data outputs 4 rclk cycles later, the or will change state to indicate validity of the data from the newly selected queue on this 3 rd rclk cycle also. the previous cycles will continue to output data from the previous queue and the or flag will indicate the status of those outputs. again, the or flag always indicates status for the data currently present on the output register. the or flag is synchronous to the rclk and all transitions of the or flag occur based on a rising edge of rclk. internally the multi-queue device monitors and keeps a record of the output ready (empty) status for all queues. it is possible that the status of an or flag may be changing internally even though that respective flag is not the active queue flag (selected on the read port). a queue selected on the write port may experience a change of its internal or flag status based on write operations, that is, data may be written into that queue causing it to become ?not empty?. see figure 48, read queue select, read operation and figure 51, output ready flag timing for details of the timing. expansion ? empty flag operation when multi-queue devices are connected in expansion configuration, the ef flags of all devices should be connected together, such that a system controller monitoring and managing the multi-queue devices read port only looks at a single ef flag (as opposed to a discrete ef flag for each device). this ef flag
43 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 is only pertinent to the queue being selected for read operations at that time. remember, that when in expansion configuration only one multi-queue device can be read from at any moment in time, thus the ef flag provides status of the active queue on the read port. this connection of flag outputs to create a single flag requires that the ef flag output have a high-impedance capability, such that when a queue selection is made only a single device drives the ef flag bus and all other ef flag outputs connected to the ef flag bus are placed into high-impedance. the user does not have to select this high-impedance state, a given multi-queue flow-control device will automatically place its ef flag output into high-impedance when none of its queues are selected for read operations. when queues within a single device are selected for read operations, the ef flag output of that device will maintain control of the ef flag bus. its ef flag will simply update between queue switches to show the respective queue status. the multi-queue device places its ef flag output into high-impedance based on the 1-3 bit id code (1 if two multi-queue are configured with a maximum total of 256 queues, 2 if four devices are used totalling a maximum of 256 queues, and 3 if there are up to eight devices with a maximum total of 256 queues) found in the 3 most significant bits of the read queue address bus, rdadd. if the 3 most significant bits of rdadd match the 1-3 bit id code setup on the static inputs, id0, id1 and id2 then the ef flag output of the respective device will be in a low- impedance state. if they do not match, then the ef flag output of the respective device will be in a high-impedance state. see figure 51, output ready flag timing for details of flag operation, including when more than one device is connected in expansion. almost full flag as previously mentioned the multi-queue flow-control device provides a single programmable almost full flag output, paf . the paf flag output provides a status of the almost full condition for the active queue currently selected on the write port for write operations. internally the multi-queue flow-control device monitors and maintains a status of the almost full condition of all queues within it, however only the queue that is selected for write operations has its full status output to the paf flag. this dedicated flag is often referred to as the ?active queue almost full flag?. the position of the paf flag boundary within a queue can be at any point within that queues depth. this location can be user programmed via the serial port or one of the default values (8 or 128) can be selected if the user has performed default programming. as mentioned, every queue within a multi-queue device has its own almost full status, when a queue is selected on the write port, this status is output via the paf flag. the paf flag value for each queue is programmed during multi-queue device programming (along with the number of queues, queue depths and almost empty values). the paf offset value, m, for a respective queue can be programmed to be anywhere between ?0? and ?d?, where ?d? is the total memory depth for that queue. the paf value of different queues within the same device can be different values. when queue switches are being made on the write port, the paf flag output will switch to the new queue and provide the user with the new queue status, on the third cycle after a new queue selection is made, on the same wclk cycle that data can actually be written to the new queue. that is, a new queue can be selected on the write port via the wradd bus, waden enable and a rising edge of wclk. on the third rising edge of wclk following a queue selection, the paf flag output will show the full status of the newly selected queue. the paf is flag output is double register buffered, so when a write operation occurs at the almost full boundary causing the selected queue status to go almost full the paf will go low 2 wclk cycles after the write. the same is true when a read occurs, there will be a 2 wclk cycle delay after the read operation. so the paf flag delay from a write operation to paf flag low is 2 wclk + t waf. the delay from a read operation to paf flag high is t skew2 + wclk + t waf. note, if t skew is violated there will be one added wclk cycle delay. the paf flag is synchronous to the wclk and all transitions of the paf flag occur based on a rising edge of wclk. internally the multi-queue device monitors and keeps a record of the almost full status for all queues. it is possible that the status of a paf flag maybe changing internally even though that flag is not the active queue flag (selected on the write port). a queue selected on the read port may experience a change of its internal almost full flag status based on read operations. the multi-queue flow-control device also provides a duplicate of the paf flag on the paf [7:0] flag bus, this will be discussed in detail in a later section of the data sheet. see figures 23 and 24 for almost full flag timing and queue switching. almost empty flag as previously mentioned the multi-queue flow-control device provides a single programmable almost empty flag output, pae . the pae flag output provides a status of the almost empty condition for the active queue currently selected on the read port for read operations. internally the multi-queue flow- control device monitors and maintains a status of the almost empty condition of all queues within it, however only the queue that is selected for read operations has its empty status output to the pae flag. this dedicated flag is often referred to as the ?active queue almost empty flag?. the position of the pae flag boundary within a queue can be at any point within that queues depth. this location can be user programmed via the serial port or one of the default values (8 or 128) can be selected if the user has performed default programming. as mentioned, every queue within a multi-queue device has its own almost empty status, when a queue is selected on the read port, this status is output via the pae flag. the pae flag value for each queue is programmed during multi- queue device programming (along with the number of queues, queue depths and almost full values). the pae offset value, n, for a respective queue can be programmed to be anywhere between ?0? and ?d?, where ?d? is the total memory depth for that queue. the pae value of different queues within the same device can be different values. when queue switches are being made on the read port, the pae flag output will switch to the new queue and provide the user with the new queue status, on the third cycle after a new queue selection is made, on the same rclk cycle that data actually falls through to the output register from the new queue. that is, a new queue can be selected on the read port via the rdadd bus, raden enable and a rising edge of rclk. on the third rising edge of rclk following a queue selection, the data word from the new queue will be available at the output register and the pae flag output will show the empty status of the newly selected queue. the pae is flag output is double register buffered, so when a read operation occurs at the almost empty boundary causing the selected queue status to go almost empty the pae will go low 2 rclk cycles after the read. the same is true when a write occurs, there will be a 3 rclk cycle delay after the write operation. so the pae flag delay from a read operation to pae flag low is 2 rclk + t rae . the delay from a write operation to pae flag high is t skew2 + rclk + t rae. note, if t skew is violated there will be one added rclk cycle delay. the pae flag is synchronous to the rclk and all transitions of the pae flag occur based on a rising edge of rclk. internally the multi-queue device monitors and keeps a record of the almost empty status for all queues. it is possible that the status of a pae flag maybe changing internally even though that flag is not the active queue flag (selected on the read port). a queue selected on the
44 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 write port may experience a change of its internal almost empty flag status based on write operations. the multi-queue flow-control device also provides a duplicate of the pae flag on the pae [7:0] flag bus, this will be discussed in detail in a later section of the data sheet. see figures 25 and 26 for almost empty flag timing and queue switching. paf n - direct bus if fm is low at master reset then the paf n bus operates in direct (addressed) mode. in direct mode the user can address the status word of queues they require and it will be placed on to the paf n bus. for example, consider the operation of the paf n bus when 26 queues have been setup. to output status of the first status word, queue[0:7] the wradd bus is used in conjunction with the fstr ( paf flag strobe) input and wclk. the address present on the 4 least significant bits of the wradd bus with fstr high will be selected as the status word address on a rising edge of wclk. to address status word 0, queue[0:7] the wradd bus should be loaded with ?0010000?, the paf n bus will change status to show the new status word selected 1 wclk cycle after status word selection. paf n[0:7] gets status of queues, queue[0:7] respectively. to address status word 1, queue[8:15], the wradd address is ?00100001?. paf n[0:7] gets status of queues, queue[8:15] respectively. to address the 2nd status word, queue[16:23], the wradd address is ?00100010?. paf [0:7] gets status of queues, queue[16:23] respectively. to address the 3rd status word, queue[24:31], the wradd address is ?00100011?. paf [0:1] gets status of queues, queue[24:25] respectively. remember, only 26 queues were setup, so when status word 4 is selected the unused outputs paf [2:7] will be don't care states. note, that if a read or write operation is occurring to a specific queue, say queue ?x? on the same cycle as a status word switch which will include the queue ?x?, then there may be an extra wclk cycle delay before that queues status is correctly shown on the respective output of the paf n bus. however, the active paf flag will show correct status at all times. status words can be selected on consecutive clock cycles, that is the status word on the paf n bus can change every wclk cycle. also, data present on the input bus, din, can be written into a queue on the same wclk rising edge that a status word is being selected, the only restriction being that a write queue selection and paf n status word selection cannot be made on the same cycle. if 8 or less queues are setup then queues, queue[0:7] have their paf status output on paf [0:7] constantly. when the multi-queue devices are connected in expansion of more than one device the paf n busses of all devices are connected together, when switching between status words of different devices the user must utilize the 1-3 most significant bits of the wradd address bus (as well as the 2 lsb?s). these 1- 3 msb?s correspond to the device id inputs, which are the static inputs, id0, id1 & id2. please refer to figure 63 paf n - direct mode status word selection for timing information. also refer to table 4, write address bus, wradd . paf n ? polled bus if fm is high at master reset then the paf n bus operates in polled (looped) mode. in polled mode the paf n bus only cycles through the number of status words required to display the status of the number of queues that have been setup in the part. every rising edge of the wclk causes the next status word to be loaded on the paf n bus. the device configured as the master (mast input tied high), will take control of the paf n after mrs goes low. for the whole wclk cycle that the first status word is on paf n the fsync ( paf n bus sync) output will be high, for all other status words, this fsync output will be low. this fsync output provides the user with a mark with which they can synchronize to the paf n bus, fsync is always high for the wclk cycle that the first status word of a device is present on the paf n bus. when devices are connected in expansion configuration, only one device will be set as the master (id = '000'), mast input tied high, all other devices will have mast tied low. the master device is the first device to take control of the paf n bus and will place its first status word on the bus on the rising edge of wclk. for the next n wclk cycles (n= number of queues divided by 8 with n being increased by one for any remainder) the master device will maintain control of the paf n bus and cycle its status words through it, all other devices hold their paf n outputs in high-impedance. when the master device has cycled all of its status words it passes a token to the next device in the chain and that device assumes control of the paf n bus and then cycles its status words and so on, the paf n bus control token being passed on from device to device. this token passing is done via the fxo outputs and fxi inputs of the devices (? paf expansion out? and ? paf expansion in?). the fxo output of the master device connects to the fxi of the second device in the chain and the fxo of the second connects to the fxi of the third and so on. the final device in a chain has its fxo connected to the fxi of the first device, so that once the paf n bus has cycled through all status words of all devices, control of the paf n will pass to the master device again and so on. the fsync of each respective device will operate independently and simply indicate when that respective device has taken control of the bus and is placing its first status word on to the paf n bus. when operating in single device mode the fxi input must be connected to the fxo output of the same device. in single device mode a token is still required to be passed into the device for accessing the paf n bus. please refer to figure 66, paf n bus ? polled mode for timing information. pae n/ pr n flag bus operation the idt72p51539/72p51549/72p51559/72p51569 multi-queue flow-con- trol device can be configured for up to 32 queues, each queue having its own almost empty/ packet ready status. an active queue has its flag status output to the discrete flags, or , pae and pr , on the read port. queues that are not selected for a read operation can have their pae / pr status monitored via the pae n/ pr n bus. the pae n/ pr n flag bus is 8 bits wide, so that 8 queues at a time can have their status output to the bus. if 9 or more queues are setup within a device then there are 2 methods by which the device can share the bus between queues, "direct" mode and "polled" mode depending on the state of the fm (flag mode) input during a master reset. if 8 or less queues are setup within a device then each will have its own dedicated output from the bus. if 8 or less queues are setup in single device mode, it is recommended to configure the paf n bus to polled mode as it does not require using the write address (wradd). pae n/ pr n - direct bus if fm is low at master reset then the pae n/ pr n bus operates in direct (addressed) mode. in direct mode the user can address the status word of queues they require to be placed on to the pae n/ pr n bus. for example, consider the operation of the pae n/ pr n bus when 26 queues have been setup. to output status of the first status word, queue[0:7] the rdadd bus is used in conjunction with the estr ( pae / pr flag strobe) input and rclk. the address present on the 2 least significant bits of the rdadd bus with estr high will be selected as the status word address on a rising edge of rclk. so to address status word 1, queue[0:7] the rdadd bus should be loaded with ?xxxx0000?, the pae n/ pr n bus will change status to show the new status word selected 1 rclk cycle after status word selection. pae n[0:7] gets status of queues, queue[0:7] respectively. to address the second status word, queue[8:15], the rdadd address is ?xxxx0001?. pae n[0:7] gets status of queues, queue[8:15] respectively. to
45 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 table 9 flag operation boundaries & timing output ready, ef / or flag boundary i/o set-up or boundary condition in36 to out36 (almost empty mode) or goes low after 1 st write (both ports selected for same queue (see note 1 below for timing) when the 1 st word is written in) in36 to out36 (packet mode) or goes low after 1 st write (both ports selected for same queue (see note 2 below for timing) when the 1 st word is written in) in36 to out18 or goes low after 1 st write (both ports selected for same queue (see note 1 below for timing) when the 1 st word is written in) in36 to out9 or goes low after 1 st write (both ports selected for same queue (see note 1 below for timing) when the 1 st word is written in) in18 to out36 or goes low after 1 st write (both ports selected for same queue (see note 1 below for timing) when the 1 st word is written in) in9 to out36 or goes low after 1 st write (both ports selected for same queue (see note 1 below for timing) when the 1 st word is written in) note: 1. or timing assertion: write to or low: t skew1 + rclk + t rov if t skew1 is violated there may be 1 added clock: t skew1 + 2 rclk + t rov de-assertion: read operation to or high: t rov 2. or timing when in packet mode (36 in to 36 out only) assertion: write to or low: t skew4 + rclk + t rov if t skew4 is violated there may be 1 added clock: t skew4 + 2 rclk + t rov de-assertion: read operation to or high: t rov note: d = queue depth ff timing assertion: write operation to ff low: t wff de-assertion: read to ff high: t skew1 + t wff if t skew1 is violated there may be 1 added clock: t skew1 +wclk +t wff full flag, ff boundary i/o set-up ff boundary condition in36 to out36 ff goes low after d+1 writes (both ports selected for same queue (see note below for timing) when the 1 st word is written in) in36 to out36 ff goes low after d writes (write port only selected for queue (see note below for timing) when the 1 st word is written in) in36 to out18 ff goes low after d writes (both ports selected for same queue (see note below for timing) when the 1 st word is written in) in36 to out18 ff goes low after d writes (write port only selected for queue (see note below for timing) when the 1 st word is written in) in36 to out9 ff goes low after d writes (both ports selected for same queue (see note below for timing) when the 1 st word is written in) in36 to out9 ff goes low after d writes (write port only selected for queue (see note below for timing) when the 1 st word is written in) in18 to out36 ff goes low after ([d+1] x 2) writes (both ports selected for same queue (see note below for timing) when the 1 st word is written in) in18 to out36 ff goes low after (d x 2) writes (write port only selected for queue (see note below for timing) when the 1 st word is written in) in9 to out36 ff goes low after ([d+1] x 4) writes (both ports selected for same queue (see note below for timing) when the 1 st word is written in) in9 to out36 ff goes low after (d x 4) writes (write port only selected for queue (see note below for timing) when the 1 st word is written in) programmable almost full flag, paf & paf n bus boundary i/o set-up paf & paf n boundary in36 to out36 paf / paf n goes low after (both ports selected for same queue when the 1 st d+1-m writes word is written in until the boundary is reached) (see note below for timing) in36 to out36 paf / paf n goes low after (write port only selected for same queue when the d-m writes 1 st word is written in until the boundary is reached) (see note below for timing) in36 to out18 paf / paf n goes low after d-m writes (see below for timing) in36 to out9 paf / paf n goes low after d-m writes (see below for timing) in18 to out36 paf / paf n goes low after ([d+1-m] x 2) writes (see note below for timing) in9 to out36 paf / paf n goes low after ([d+1-m] x 4) writes (see note below for timing) note: d = queue depth m = almost full offset value. default values: if df is low at master reset then m = 8 if df is high at master reset then m= 128 paf timing assertion: write operation to paf low: 2 wclk + t waf de-assertion: read to paf high: t skew2 + wclk + t waf if t skew2 is violated there may be 1 added clock: t skew2 + 2 wclk + t waf paf n timing assertion: write operation to paf n low: 2 wclk* + t paf de-assertion: read to paf n high: t skew3 + wclk* + t paf if t skew3 is violated there may be 1 added clock: t skew3 + 2 wclk* + t paf * if a queue switch is occurring on the write port at the point of flag assertion or de-assertion there may be one additional wclk clock cycle delay.
46 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 table 9 flag operation boundaries & timing (continued) note: n = almost empty offset value. default values: if df is low at master reset then n = 8 if df is high at master reset then n = 128 pae n timing assertion: read operation to pae n low: 2 rclk* + t pae de-assertion: write to pae n high: t skew3 + rclk* + t pae if t skew3 is violated there may be 1 added clock: t skew3 + 2 rclk* + t pae * if a queue switch is occurring on the read port at the point of flag assertion or de-assertion there may be one additional rclk clock cycle delay. programmable almost empty flag bus, pae n boundary i/o set-up pae n boundary condition in36 to out36 pae n goes high after (both ports selected for same queue when the 1 st n+2 writes word is written in until the boundary is reached) (see note below for timing) in36 to out36 pae n goes high after (write port only selected for same queue when the n+1 writes 1 st word is written in until the boundary is reached) (see note below for timing) in36 to out18 pae n goes high after n+1 writes (see below for timing) in36 to out9 pae n goes high after n+1 writes (see below for timing) in18 to out36 pae n goes high after (both ports selected for same queue when the 1 st ([n+2] x 2) writes word is written in until the boundary is reached) (see note below for timing) in18 to out36 pae n goes high after (write port only selected for same queue when the ([n+1] x 2) writes 1 st word is written in until the boundary is reached) (see note below for timing) in9 to out36 pae n goes high after (both ports selected for same queue when the 1 st ([n+2] x 4) writes word is written in until the boundary is reached) (see note below for timing) in9 to out36 pae n goes high after (write port only selected for same queue when the ([n+1] x 4) writes 1 st word is written in until the boundary is reached) (see note below for timing) note: n = almost empty offset value. default values: if df is low at master reset then n = 8 if df is high at master reset then n = 128 pae timing assertion: read operation to pae low: 2 rclk + t rae de-assertion: write to pae high: t skew2 + rclk + t rae if t skew2 is violated there may be 1 added clock: t skew2 + 2 rclk + t rae programmable almost empty flag, pae boundary i/o set-up pae assertion in36 to out36 pae goes high after n+2 (both ports selected for same queue when the 1 st writes word is written in until the boundary is reached) (see note below for timing) in36 to out18 pae goes high after n+1 (both ports selected for same queue when the 1 st writes word is written in until the boundary is reached) (see note below for timing) in36 to out9 pae goes high after n+1 (both ports selected for same queue when the 1 st writes word is written in until the boundary is reached) (see note below for timing) in18 to out36 pae goes high after (both ports selected for same queue when the 1 st ([n+2] x 2) writes word is written in until the boundary is reached) (see note below for timing) in9 to out36 pae goes high after (both ports selected for same queue when the 1 st ([n+2] x 4) writes word is written in until the boundary is reached) (see note below for timing) packet ready flag, pr boundary assertion: both the rising and falling edges of pr are synchronous to rclk. pr falling edge occurs upon writing the first teop marker, on input d35, (assuming a tsop marker, on input d34 has previously been written). i.e. a complete packet is available within a queue. timing: from wclk rising edge writing the teop word pr goes low after: t skew4 + 2 rclk + t pr if t skew4 is violated: pr goes low after t skew4 + 3 rclk + t pr de-assertion: pr rising edge occurs upon reading the last rsop marker, from output q34. i.e. there are no more complete packets available within the queue. timing: from rclk rising edge reading the rsop word the pr goes high after: 3 rclk + t pr (please refer to figure 57, data output (receive) packet mode of operation for timing diagram). packet ready flag bus, pr n boundary assertion: both the rising and falling edges of pr n are synchronous to rclk. pr n falling edge occurs upon writing the first teop marker, on input d35, (assuming a tsop marker, on input d34 has previously been written). i.e. a complete packet is available within a queue. timing: from wclk rising edge writing the teop word pr goes low after: t skew4 + 2 rclk* + t pae if t skew4 is violated pr n goes low after t skew4 + 3 rclk* + t pae *if a queue switch is occurring on the read port at the point of flag assertion there may be one additional rclk clock cycle delay. de-assertion: pr rising edge occurs upon reading the last rsop marker, from output q34. i.e. there are no more complete packets available within the queue. timing: from rclk rising edge reading the rsop word the pr goes high after: 3 rclk* + t pae *if a queue switch is occurring on the read port at the point of flag assertion or de-assertion there may be one additional rclk clock cycle delay.
47 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 address the third status word, queue[16:23], the rdadd address is ?xxxx0010?. pae [0:7] gets status of queues, queue[16:23] respectively. to address the fourth status word, queue[24:31], the rdadd address is ?xxxx0011?. pae [0:1] gets status of queues, queue[24:25] respectively. remember, only 26 queues were setup, so when status word 4 is selected the unused outputs pae [2:7] will be don't care states. note, that if a read or write operation is occurring to a specific queue, say queue ?x? on the same cycle as a status word switch which will include the queue ?x?, then there may be an extra rclk cycle delay before that queues status is correctly shown on the respective output of the pae n/ pr n bus. status words can be selected on consecutive clock cycles, that is the status word on the pae n/ pr n bus can change every rclk cycle. also, data can be read out of a queue on the same rclk rising edge that a status word is being selected, the only restriction being that a read queue selection and pae n/ pr n status word selection cannot be made on the same rclk cycle. if 8 or less queues are setup then queues, queue[0:7] have their pae / pr status output on pae [0:7] constantly. when the multi-queue devices are connected in expansion of more than one device the pae n/ pr n busses of all devices are connected together, when switching between status words of different devices the user must utilize the 3 most significant bits of the rdadd address bus (as well as the 2 lsb?s). these 3 msb?s correspond to the device id inputs, which are the static inputs, id0, id1 & id2. please refer to figure 62, pae n/ pr n - direct mode status word selection for timing information. also refer to table 5, read address bus, rdadd . pae n ? polled bus if fm is high at master reset then the pae n/ pr n bus operates in polled (looped) mode. in polled mode the pae n/ pr n bus automatically cycles through the 4 status words within the device regardless of how many queues have been setup in the part. every rising edge of the rclk causes the next status word to be loaded on the pae n/ pr n bus. the device configured as the master (mast input tied high), will take control of the pae n/ pr n after mrs goes low. for the whole rclk cycle that the first status word is on pae n/ pr n the esync ( pae n/ pr n bus sync) output will be high, for all other status words, this esync output will be low. this esync output provides the user with a mark with which they can synchronize to the pae n/ pr n bus, esync is always high for the rclk cycle that the first status word of a device is present on the pae n/ pr n bus. when devices are connected in expansion configuration, only one device will be set as the master (id='000'), mast input tied high, all other devices will have mast tied low. the master device is the first device to take control of the pae n/ pr n bus and will place its first status word on the bus on the rising edge of rclk after the mrs input goes low. for the next n rclk cycles (n=number of queues divided by 8 with n incrementing by one should there be a remainder) the master device will maintain control of the pae n/ pr n bus and cycle its status words through it, all other devices hold their pae n/ pr n outputs in high-impedance. when the master device has cycled all of its status words it passes a token to the next device in the chain and that device assumes control of the pae n/ pr n bus and then cycles its status words and so on, the pae n/ pr n bus control token being passed on from device to device. this token passing is done via the exo outputs and exi inputs of the devices (? pae expansion out? and ? pae expansion in?). the exo output of the master device connects to the exi of the second device in the chain and the exo of the second connects to the exi of the third and so on. the final device in a chain has its exo connected to the exi of the first device, so that once the pae n/ pr n bus has cycled through all status words of all devices, control of the pae n/ pr n will pass to the master device again and so on. the esync of each respective device will operate independently and simply indicate when that respective device has taken control of the bus and is placing its first status word on to the pae n/ pr n bus. when operating in single device mode the exi input must be connected to the exo output of the same device. in single device mode a token is still required to be passed into the device for accessing the pae n bus. packet ready flag the 36-bit multi-queue flow-control device provides the user with a packet ready feature. during a master reset packet mode is selected by pkt = high. the pr discrete flag, provides a packet ready status of the active queue selected on the read port. a packet ready status is individually maintained on all queues; however only the queue selected on the read port has its packet ready status indicated on the pr output flag. a packet is available on the output for reading when both pr and or are asserted low. if less than a full packet is available, the pr flag will be high (packet not ready). in packet mode, no words can be read from a queue until a complete packet has been written into that queue, regardless of ren . when packet mode is selected the programmable almost empty bus, pae n, becomes the packet ready bus, pr n. when configured in direct bus (fm = low during a master reset), the pr n bus provides packet ready status in 8 queue increments. the pr n bus supports either polled or direct modes of operation. the pr n mode of operation is configured through the flag mode (fm) bit during a master reset. when the multi-queue is configured for packet mode operation, the two most significant bits of the 36-bit data bus are used as ?packet markers?. on the write port these are bits d34 (transmit start of packet,) d35 (transmit end of packet) and on the read port q34, q35. all four bits are monitored by the packet control logic as data is written into and read out from the queues. the packet ready status for individual queues is then determined by the packet ready logic. on the write port d34 is used to ?mark? the first word being written into the selected queue as the ?transmit start of packet?, tsop. to further clarify, when the user requires a word being written to be marked as the start of a packet, the tsop input (d34) must be high for the same wclk rising edge as the word that is written. the tsop marker is stored in the queue along with the data it was written in until the word is read out of the queue via the read port. on the write port d35 is used to ?mark? the last word of the packet currently being written into the selected queue as the ?transmit end of packet? teop. when the user requires a word being written to be marked as the end of a packet, the teop input must be high for the same wclk rising edge as the word that is written in. the teop marker is stored in the queue along with the data it was written in until the word is read out of the queue via the read port. the packet ready logic monitors all start and end of packet markers both as they enter respective queues via the write port and as they exit queues via the read port. the multi-queue internal logic increments and decrements a packet counter, which is provided for each queue. the functionality of the packet ready logic provides status as to whether at least one full packet of data is available within the selected queue. a partial packet in a queue is regarded as a packet not ready and pr (active low) will be high. in packet mode, no words can be read from a queue until at least one complete packet has been written into the queue, regardless of ren . for example, if a tsop has been written and some number of words later a teop is written a full packet of data is deemed to be available, and the pr flag and or will go active low. consequently if reads begin from a queue that has only one complete packet and the rsop is detected on the output port as data is being read out, pr will go inactive high. or will remain low indicating there is still valid data being read out of that queue until the reop is read. the user may proceed with the reading operation until the current packet has been read out and no further complete packets are available. if during that time another complete packet has been written into the queue and
48 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 byte a byte b byte c byte d d0/q0 d35/q35 tmod1 (d33) rmod1 (q33) tmod2 (d32) rmod2 (q32) valid bytes 0 0 a, b, c, d 01a 1 0 a, b 1 1 a, b, c d15/q15 d23/q23 d31/q31 d34/q34 d33/q33 d32/q32 mod 2 mod 1 sop eop d7/q7 6715 drw19 table 10 packet mode valid byte for x36 bit word configuration the pr flag will again gone active, then reads from the new packet may follow after the current packet has been completely read out. the packet counters therefore look for start of packet markers followed by end of packet markers and regard data in between the tsop and teop as a full packet of data. the packet monitoring has no limitation as to how many packets are written into a queue, the only constraint is the depth of the queue. note, there is a minimum allowable packet size of four words, inclusive of the tsop marker and teop marker. the packet logic does expect a tsop marker to be followed by a teop marker. if a second tsop marker is written after a first, it is ignored and the logic regards data between the first tsop and the first subsequent teop as the full packet. the same is true for teop; a second consecutive teop mark is ignored. on the read side the user should regard a packet as being between the first rsop and the first subsequent reop and disregard consecutive rsop markers and/or reop markers. this is why a teop may be written twice, using the second teop as the ?filler? word. as an example, the user may also wish to implement the use of an ?almost end of packet? (aeop) marker. for example, the aeop can be assigned to data input bit d33. the purpose of this aeop marker is to provide an indicator that the end of packet is a fixed (known) number of reads away from the end of packet. this is a useful feature when due to latencies within the system, monitoring the reop marker alone does not prevent ?over reading? of the data from the queue selected. for example, an aeop marker set 4 writes before the teop marker provides the device connected to the read port with and ?almost end of packet? indication 4 cycles before the end of packet. the aeop can be set any number of words before the end of packet determined by user requirements or latencies involved in the system. see figure 55, reading in packet mode during a queue change , figure 57, data output (receive) packet mode of operation . packet mode ? modulo operation the internal packet ready control logic performs no operation on these modulo bits, they are only informational bits that are passed through with the respective data byte(s). when utilizing the multi-queue flow-control device in packet mode, the user may also want to consider the implementation of ?modulo? operation or ?valid byte marking?. modulo operation may be useful when the packets being transferred through a queue are in a specific byte arrangement even though the data bus width is 36 bits. in modulo operation the user can concatenate bytes to form a specific data string through the multi-queue device. a possible scenario is where a limited number of bytes are extracted from the packet for either analysis or filtered for security protection. this will only occur when the first 36 bit word of a packet is written in and the last 36 bit word of packet is written in. the modulo operation is a means by which the user can mark and identify specific data within the queue. on the write port data input bits, d32 (transmit modulo bit 2, tmod2) and d33 (transmit modulo bit 1, tmod1) can be used as data markers. an example of this could be to use d32 and d33 to code which bytes of a word are part of the packet that is also being marked as the ?start of marker? or ?end of marker?. conversely on the read port when reading out these marked words, data outputs q32 (receive modulo bit 2, rmod2) and q33 (receive modulo bit 1, rmod1) will pass on the byte validity information for that word. refer to table 10 for one example of how the modulo bits may be setup and used. see figure 57, data output (receive) packet mode of operation .
49 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 6715 drw20 35 0 notes: 1. a start of packet (sop) and end of packet (eop) may not occur within a same word. 2. the x36 bit words locate sop and eop as follows; a. bit 35 is eop b. bit 34 is sop. 6715 drw21 17 0 17 0 32, 34 <15:0> 35,33 <31:16> (even word) (odd word) notes: 1. in a 36 bit word to 18 bit word configuration the 36 bit word is converted to two (2) 18 bit words. 2. an sop and eop may not occur within a same word. 3. the x18 bit even words (0,2,4, etc.) contain demarcation bits 32 (asop) and 34 (sop). 4. the x18 bit odd words (1,3,5, etc.) contain demarcation bits 33 (aeop) and 35 (eop). 6715 drw22 0 8 a b c d 34 <7:0> 32 <15:8> 33 <23:16> 35 <31:24> notes: 1. in a 36 bit word to 9 bit word configuration the 36 bit word is converted into four (4) 9 bit words. 2. an sop and eop may not occur within a same word. 3. the x9 bit words contain the demarcation bits as follows; a. bit 8 in word ?a? is the start of packet (sop) b. bit 8 in word ?b? is the almost start of packet (asop). c. bit 8 in word ?c? is the almost end of packet (aeop). d. bit 8 in word ?d? is the end of packet (eop). packet mode demarcation bits the idt72p51539/72p51549/72p51559/72p51569 can be configured for packet mode operation. in packet mode the idt72p51539/72p51549/72p51559/ 72p51569 provides the functionality to demarcate packets within a queue. the demarcation functionality is only available in packet mode and is used to generate the packet ready ( pr ) flag. the demarcation of packets/information is accomplished with the demarcation bits [35:32]. the demarcation bit assignments are; bit 35 end of packet (eop), bit 34 start of packet (sop), bit 33 almost end of packet (aeop) and bit 32 almost start of packet (asop). during packet mode bus matching, which is the ability to set the write interface and read interface to independent word lengths (i.e. 9 bit word, 18 bit word, 36 bit word), the demarcation bits are located within their respective word length. for example within a 36 bit to 36 bit word bus matching configuration bit 35 is designated as the end of packet (eop) and bit 34 is start of packet (sop). in an 18 bit to 18 bit word bus matching configuration bit 17 is designated end of packet (eop) and bit 16 is start of packet. the minimum packet word length required by the idt72p51539/72p51549/72p51559/72p51569 is four (4) of the largest words specified within a bus matching configuration. refer to figure 27-35 for designated locations of the demarcation bits within a specific word configuration. figure 27. 36bit to 36bit word configuration figure 28. 36bit to 18bit word configuration figure 29. 36bit to 9bit word configuration
50 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 6715 drw23 35 34 33 32 0 2 nd <15:0>, 1 st <15:0> notes: 1. in a 18bit word to 36 bit word configuration two (2) eighteen bit words are concatenated to form one x36 bit word. 2. the x36 bit words contain demarcation bits as follows; a. bit 35 is end of packet (eop) b. bit 34 is start of packet (sop). c. bit 33 almost end of packet (aeop). d. bit 32 almost start of packet (asop). notes: 1. an sop and eop may not occur within a same word. 2. the x18 bit words contain the demarcation bits as follows; a. bit 17 is the end of packet (eop). b. bit 16 is the start of packet (sop). 3. in this configuration there is no asop or aeop demarcation bits. 6715 drw24 17 0 16 notes: 1. in a 18 bit word to 9 bit word configuration a single eighteen bit word is converted into two (2) nine bit words. 2. the x9 bit words contain demarcation bits as follows; a. bit 17 is end of packet (eop) b. bit 16 is start of packet (sop). 3. an sop and eop may not occur within the same word. 4. in this configuration there is no asop or aeop demarcation bits. 6715 drw24a 0 8 a b 17 <7:0> 17 <15:8> 9 figure 30. 18bit to 36bit word configuration figure 31. 18bit to 18bit word configuration figure 32. 18bit to 9bit word configuration
51 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 notes: 1. in a 9 bit word to 36 bit word configuration four (4), nine bit words are concatenated to form one x36 bit word. 2. the x36 bit words contain demarcation bits as follows; a. bit 35 is end of packet (eop) b. bit 34 is start of packet (sop). c. bit 33 almost end of packet (aeop). d. bit 32 almost start of packet (asop). 6715 drw25 35 34 33 32 0 4 th <7:0>, 3 rd <7:0>, 2 nd <7:0>, 1 st <7:0> notes: 1. in a 9 bit word to 18 bit word configuration two (2), nine bit words are concatenated to form one x18 bit word. 2. the x18 bit words contain demarcation bits as follows; a. bit 17 is end of packet (eop) b. bit 16 is start of packet (sop). 3. an sop and eop may not occur within the same word. 6715 drw26 0 17 16 notes: 1. an sop and eop may not occur within the same word. 2. bit 8 of the x9 bit even words (0,2,4, etc.) is checked for a start of packet (sop). 3. bit 8 of the x9bit odd words (1,3,5, etc.) is checked for end of packet (eop). 4. the minimum packet word length is 4 words. 6715 drw27 0 8 figure 33. 9bit to 36bit word configuration figure 34. 9bit to 18bit word configuration figure 35. 9bit to 9bit word configuration
52 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 bm3 bm2 bm1 bm0 write port read port 0 0 0 0 x36 x36 0 0 0 1 x36 x18 0 0 1 0 x36 x9 0 0 1 1 x18 x36 0 1 0 1 x18 x18 0 1 1 0 x18 x9 0 1 0 0 x9 x36 0 1 1 1 x9 x18 1 0 0 1 x9 x9 table 11 bus-matching set-up bus matching operation bus matching operation between the input port and output port is available. during a master reset of the multi-queue the state of the three setup pins, bm [3:0] (bus matching), determine the input and output port bus widths as shown in table 11, ?bus matching set-up?. 9 bit words, 18 bit words and 36 bit words can be written into and read from the queues. when writing to or reading from the multi-queue in a bus matching mode, the device orders data in a ?little endian? format. see figure 36, bus matching byte arrangement for details. the full flag and almost full flag operation is always based on writes and reads of data widths determined by the write port width. for example, if the input port is x36 and the output port is x9, then four data reads from a full queue will be required to cause the full flag to go high (queue not full). conversely, the empty flag and almost empty flag operations are always based on writes and reads of data widths determined by the read port. for example, if the input port is x18 and the output port is x36, two write operations will be required to cause the empty flag ( ef ) of an empty queue to go high (queue is not empty). note, that the input port serves all queues within a device, as does the output port, therefore the input bus width to all queues is equal (determined by the input port size) and the output bus width from all queues is equal (determined by the output port size).
53 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 d b c a (c) x36 input to x9 output 1st: read from queue 2nd: read from queue 3rd: read from queue 4th: read from queue 6715 drw28 q35-q27 q26-q18 q17-q9 q8-q0 q35-q27 q26-q18 q17-q9 q8-q0 q35-q27 q26-q18 q17-q9 q8-q0 q35-q27 q26-q18 q17-q9 q8-q0 a c b b d a cd (a) x36 input to x36 output (b) x36 input to x18 output read from queue 1st: read from queue 2nd: read from queue byte order on output port: q35-q27 q26-q18 q17-q9 q8-q0 q35-q27 q26-q18 q17-q9 q8-q0 q35-q27 q26-q18 q17-q9 q8-q0 a c b d 1st: write to queue 2nd: write to queue 3rd: write to queue 4th: write to queue byte order on input port: dcb a (e) x9 input to x36 output read from queue byte order on output port: d35-d27 d26-d18 d17-d9 d8-d0 d35-d27 d26-d18 d17-d9 d8-d0 d35-d27 d26-d18 d17-d9 d8-d0 d35-d27 d26-d18 d17-d9 d8-d0 q35-q27 q26-q18 q17-q9 q8-q0 q35-q27 q26-q18 q17-q9 q8-q0 c a d d b c a b d35-d27 d26-d18 d17-d9 d8-d0 (d) x18 input to x36 output read from queue byte order on input port: d35-d27 d26-d18 d17-d9 d8-d0 1st: write to queue 2nd: write to queue byte order on output port: d35-d27 d26-d18 d17-d9 d8-d0 abc d write to queue byte order on input port: h bm h bm h bm h bm l bm figure 36. bus-matching byte arrangement note: 1. please refer to table 11, bus-matching set-up for details.
54 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 t rsf paf t rsf pae t rsf t rsf t rsf pr t rsf t rsf qn t rsf logic "1" if oe is low and device is master high-z if oe is high or device is slave logic "1" if master device high-z if slave device logic "1" if master device high-z if slave device high-z if slave device logic "0" if master device high-z if slave device logic "0" if master device logic "1" if master device high-z if slave device logic "1" if master device high-z if slave device logic "1" if master device high-z if slave device paf n pae n pr n 6715 drw46 df high = offset value is 128 low = offset value is 8 t rss ff / ir t rsf high-z if slave device logic "0" if master device ef / or t rs mrs wen ren t rss fstr, estr t rsr seni waden, raden t rss t rss t rss bm dfm high = queue programming low = serial programming t rss fm high = polled mode low = strobed (direct) id0, id1, id2 t rss high = packet ready mode mast pkt high = master device low = slave device t rss t rss t rss t rss qsel [1:0] see table 2, for setting the queue programming t rss note: 1. oe can toggle during this period. figure 37. master reset
55 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 38. default programming dfm mrs seni seno mq1 wclk serial enable (can be tied low) wclk default mode dfm = 1 master reset default programming complete dfm mrs seni seno mq2 wclk dfm mrs seni seno mqn wclk rclk wen ff waden raden or 6715 drw47 t wff t ens t ref t pcwq t qs t qh t qs t qh t pcrq high - z high - z (slave device) (slave device) seno (mq1) t seno seno (mq2) seno (mqn) t seno wclk mrs 1st device in chain 1st 2nd nth 3rd 2nd device in chain 1st 2nd nth final device in chain 1st 2nd nth programming complete t seno serial port connection for default programming si so xsi so xsi so x dfm qsel [1:0] notes: 1. this diagram illustrates multiple devices connected in expansion. the seno of the final device in a chain is the "programming complete" signal. 2. seni of the first device in the chain can be held low 3. the seno of a device should connect to the seni of the next device in the chain. the final device seno is used to indicate programming complete. 4. when default programming is complete the seno of the final device will go low. 5. sclk is not used and can be tied low. 6. programming of all devices must be complete ( seno of the final device is low), before any write or read port operations can take place, this includes queue selections.
56 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 39. parallel programming rclk wen ff waden raden 6715 drw47a t wff t ens t pcwq t qs t qh t qs t qh t pcrq high - z t seno 1st 2nd nth 3rd seno wclk mrs dfm qsel1 t dh t ds t dh t ds t dh t ds qsel0 notes: 1. the seno is the "programming complete" signal. 2. seni can be held low. 3. when parallel programming is complete the seno of the device will go low. 4. sclk is not used and can be tied low. 5. programming of the device must be complete ( seno of the device is low), before any write or read port operations can take place, this includes queue selections.
57 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 42. serial port connection for serial programming dfm mrs seni seno mq1 si so sclk dfm mrs seni seno mq2 si so sclk dfm mrs seni seno mqn master id=?ooo? si so sclk serial enable serial input serial clock default mode dfm = 0 master reset serial loading complete 6715 drw50 figure 40. queue programming via write address bus wclk 6715 drw48 t ens t wff t waf t paf wen waden t ah t as wradd qx t qh t qs t ens ff paf active bus paf -qx figure 41. queue programming via read address bus rclk rdadd t ah t as t qh t qs qx raden r-2 r-1 r r+3 r+1 t ens ren r+4 t ens t ref or t rae pae 6715 drw49 active bus pae -qx (6) t pae r+2
58 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 43. serial programming rclk wen ff ef 6715 drw51 t ref t pcsf t ens low seno (mq1) wclk so (mq1) mrs sclk seni (mq1) si (mq1) t rsr t seno 1st 2nd nth 1st 2nd nth 1st 2nd nth t sens seno (mq2) seno (mq8) b 12 b 11 t sds b 1n t sdh b 21 b 22 b 2n b 81 b 82 b 8n b 21 b 22 b 2n b 81 b 82 b 8n t seno t seno t sclk t sckl t sckh programming complete 1st device in chain 2nd device in chain final device in chain t sdo t sdop t senop t senop low notes: 1. seni can be toggled during serial loading. once serial programming of a device is complete, the seni and si inputs become transparent. seni seno and si so. 2. dfm is low and qsel0 = low, qsel1 = low during master reset to provide serial programming mode, df is don't care. 3. when seno of the final device is low no further serial loads will be accepted. 4. n = 19+(qx72); where q is the number of queues required for the idt72p51539/72p51549/72p51559/72p51569. 5. this diagram illustrates 8 devices in expansion. 6. programming of all devices must be complete ( seno of the final device is low), before any write or read port operations can take place, this includes queue selections.
59 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 44. write queue select, write operation and full flag operation wclk 6715 drw52 t skew1 t qs t qh t ens q y t a previous q, word, w previous q, w +1 pft t a t a qy, w 0 qy, w 1 t as t ah *aa* *bb* *cc* *dd* *ee* *ff* t ens t ah t as q y t qh t qs t dh t ds q x w d t dh q y w d-2 t dh t ds q y w d t ds t dh t ds t wff t wff t wff no writes queue full *c* *d* *e* *f* *g* *h* t enh *i* *j* *k* waden t qh t qs t ah t as wradd q x ff wen din previous q status *a* rclk ren rdadd raden qout *b* t a *gg* t wff t wff *l* no writes queue full q y w d-1 qy, w 2 123 note : oe is active low. cycle: *a* queue, qx is selected on the write port. the ff flag is providing status of a previously selected queue, within the same device. *aa* queue, qy is selected for read operations. *b* the ff flag provides status of previous queue for 3 wclk cycles. *bb* current word is kept on the output bus since ren is high. *c* the ff flag output updates to show the status of qx, it is not full. *cc* word w+1 is read from the previous queue regardless of ren due to fwft. *d* word, wd is written into qx. this causes qx to go full. *dd* the next available word w0 of qy is read out regardless of ren , 3 rclk cycles after queue selection. this is fwft operation. *e* queue, qy is selected within the same device as qx. a write to qx cannot occur on this cycle because it is full, ff is low. *ee* no reads occur, ren is high. *f* again, a write to qx cannot occur on this cycle because it is full, ff is low. *ff* word, w1 is read from qy, this causes qy to go ?not full?, ff flag goes high after time, t skew1 + t wff . note, if t skew1 is violated the time ff high will be: t skew1 + wclk + t wff . *g* the ff flag updates after time t wff to show that queue, qy is not full. *gg* word, w2 is read from qy. *h* word, wd-2 is written into qy. *i* word, wd-1 is written into qy. *j* word, wd is written into qy, this causes qy to go full, ff goes low. *k* a write to qy cannot occur on this cycle because it is full, ff is low. *l* qy goes ?not full? based on reading word w1 from qy on cycle *ff*.
60 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 45. write queue select, mark and rewrite wclk 6715 drw53 t ens t ah t as q y t qh t qs t dh t ds q x w d t dh t ds q y w d t ds t dh *c* *d* *e* *f* *g* *h* t enh *i* *j* *k* waden t qh t qs t ah t as wradd q x wen din *a* *b* *l* q y w d-1 t ens t enh notes : 1. only 1 queue can be marked at any given time. 2. marking a queue can only occur during a queue switch. cycle: *a* queue "x" is selected but not marked. *e* queue "y" is selected and marked.
61 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 6715 drw54 w1 w2 w3 wclk t enh wen dn t dh t ds t ds t dh t ds t dh rclk t skew1 12 ren t a w1 qy fwft t a w2 qy fwft w3 qy last word read out of queue qout t ref or t ref t ens figure 46. write operations in first word fall through mode notes: 1. qy has previously been selected on both the write and read ports. 2. oe is low. 3. the first word latency = t skew1 + rclk + t a . if t skew1 is violated an additional rclk cycle must be added.
62 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 wclk t fflz 6715 drw55 1 2 t skew1 t ah t as d 1 q 5 t q h t qs t a previous q w x-1 d 1 -q 5 word w 0 *aa* *bb* *cc* t ens t ah t as t ah t as t qh t qs d 2 q 9 t qh t qs t dh t ds w d d 1 q27 t dh t ds t wff w d d 1 q5 t wff t wff t enh t ens t enh d 1 q 5 t ffhz t wff high-z t ffhz high-z t fflz addr=00100101 *c* *d* *e* *f* *g* *h* *i* *j* no write *k* waden t qh t qs t ah t as wradd d 1 q 27 ff (device 1) wen din high-z rclk addr=00111011 ff (device 2) rdadd raden *a* qout *b* *dd* 3 t a previous q w x figure 47. full flag timing in expansion configuration note: 1. ren = high. cycle: *a* queue, q27 of device 1 is selected on the write port. the ff flag of device 1 is in high-impedance, the write port of device 2 was previously selected. wen is high so no write occurs. *aa* queue, q5 of device 1 is selected on the read port. *b* the ff flag stays in high-impedance for 2 wclk cycles. *bb* word, wx-1 is held on the outputs for 2 rclk cycles after a read queue switch. *c* the ff flag of device 2 goes to high-impedance and the ff flag of device 1 goes to low-impedance, logic high indicating that d1 q27 is not full. wen is high so no write occurs. *cc* word, wx is read from the previously selected queue, (due to fwft). *d* word, wd is written into q27 of d1. this write operation causes q27 to go full, ff goes low. *dd* the first word from q5 of d1 selected on cycle *aa* is read out, this occurred regardless of ren due to fwft. this read caused q5 to go not full, therefore the ff flag will go high after: t skew1 + t wff . note if t skew1 is violated the time to ff flag high is t skew1 + wlck + t wff . *e* queue, q5 of device 1 is selected on the write port. no write occurs on this cycle. *f* the ff flag stays in high-impedance for 2 wclk cycles. *g* the ff flag updates to show the status of d1 q5, it is not full, ff goes high. *h* word, wd is written into q5 of d1. this causes the queue to go full, ff goes low. *i* no write occurs regardless of wen , the ff flag is low preventing writes. the ff flag goes high due to the read from q5 of d1 on cycle *cc*. (this read is not an enabled read, it is due to the fwft operation ). *j* queue, q9 of device 2 is selected on the write port. *k* the ff flag of device 1 goes to high-impedance, this device was deselected on the write port on cycle *i*. the ff flag of device 2 goes to low-impedance and provides status of q9 of d2.
63 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 48. read queue select, read operation (idt mode) rclk 6715 drw56 t ah t as q g t qh t qs t a t a q p w n t a q f w 0 q f w 1 t ref 2 *g* *h* *i* *j* t a q f w 2 *k* 3 t ah t as q f rdadd t qh t qs raden ren t ens t enh t ens q out q p w n-3 q p w n-2 t a q p w n-1 ef 1 *a* *b* *c* *d* *e* *f* cycle: *a* word wn- 3 is on the qout bus from the present selected queue. *b* wn- 2 is placed on qout bus. *c* reads are disabled, wn- 1 is placed on qout bus. *d* a new queue, q f is selected for read operations. *e* word wn- 1 from q p remains on qout bus. *f* word q p wn- 1 remains on qout bus. *g* the next word available in present queue q p , wn is placed on qout bus. *h* the next word available in the new queue, q f -w 0 is placed on the output bus. a new queue, q g is selected for read operations. (this queue is an empty queue). *i* word, w 1 is read from q f . *j* word, w 2 is read from q f . *k* word w 2 from q f remains on the output bus because q g is empty. w 2 is the last word in q g .
64 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 49. read queue select, read operation (fwft mode) rclk 6715 drw57 t ah t as q f rdadd t qh t qs raden ren t ens t enh t ens t ah t as q g t qh t qs q out q p w n-3 t a q p w n-2 t a present q, q p w n-1 t a t a q p w n t a q p w n+1 t a q f w 0 q f w 1 t ref or present q 1 2 *a* *b* *c* *d* *e* *f* *g* *h* *i* t a q f w 2 *j* 3 cycle: *a* word wn- 3 is read from a present selected queue qp on the read port. *b* wn- 2 is read. *c* reads are disabled, wn- 1 remains on the output bus. *d* a new queue, q f is selected for read operations. *e* word wn- 1 in qp is read out. *f* the next word available in current queue q p , wn+ 1 is read regardless of ren due to fwft. *g* the next word available in the new queue, q f -w 0 falls through to the output bus, again this is regardless of ren . a new queue, q g is selected for read operations. (this queue is an empty queue). *h* word, w 1 is read from q f . *i* word, w 2 is read from q f . *j* word w 2 from q f remains on the output bus because q g is empty. the output ready flag, or goes high to indicate that the current word is not valid, i.e. q g is empty. w 2 is the last word in q g .
65 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 50. read queue select, mark and reread (idt mode) rclk 6715 drw58 *k* t ah t as q f rdadd t qh t qs raden ren t ens t enh t ens t ah t as q g t qh t qs 1 2 *a* *b* *c* *d* *e* *f* *g* *h* *i* 3 t enh *j* notes : 1. only 1 queue can be marked at any given time. 2. marking a queue can only occur during a queue switch. cycle: *d* queue "f" is selected but not marked. *h* queue "g" is selected and marked.
66 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 51. output ready flag timing (in fwft mode) 6715 drw59 q 15 t ref t dh t ds q 15 t ens t enh t a *h* *i* *j* *k* t ah t as t qh t qs q 15 t ah t as q 15 t qh t qs q 30 w d last word *d* *e* *f* rclk raden t qh t qs t ah t as rdadd q 30 or t ens ren qout wclk wradd waden din wen *a* *b* *c* *g* pq pq pq pq q 15 cycle: *a* queue 30 is selected for read operations. it requires 4 clock cycles to switch queues. *b* reads are now enabled. a word from the previously selected queue will be read out. *c* another word from present queue (pq) is read. *d* another word from pq is read. *e* wd is read from q30 of d1. this happens to be the last word of q30, therefore or goes high to indicate that the data on the qout is not valid (q30 was read to empty). word, wd remains on the output bus. queue 15 is selected for read operations. *f* the last word of q30 remains on the qout bus, or is high, indicating that this word has been previously read. *g* the last word of queue 30 remains on the qout bus. *h* the last word of queue 30 remains on the qout bus. *i* the next word, available from the newly selected queue, q15 is now read out. this will occur regardless of ren , due to fwft mode. *j* a word, is read from q15. *k* the or flag stays low to indicate that q15 has additional words available for reading.
67 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 52. read queue selection with read operations (idt mode) rclk 6715 drw60 t ens q p w d+2 t a q p w d+4 t a t enh *m* *n* *o* *p* *q* q p w d+3 t a 123 t ah t as q p t q h t qs t a q n w d+2 t a q n w d *g* *h* *i* *j* t ens t enh 123 q n w d+1 t a *k* *l* t ah t as q n rdadd t qh t qs raden ren q out q p w d t a q p w d+1 ef t ens t enh *a* *b* *c* *d* *e* *f* cycle: *a* word wd+1 is read from the present selected queue, qp. *b* reads are disabled, word wd+1 remains on the output bus. *c* a new queue, qn is selected for read port operations. qp w d+1 remains on qout bus. *d* ren is not asserted therefore no read operation occurs, qp w d+1 remains on qout bus. *e* ren is not asserted therefore no read operation occurs, qp w d+1 remains on qout bus. *f* ren is not asserted therefore no read operation occurs, qp w d+1 remains on qout bus. *g* word w d of qn is read out. *h* word w d+1 of qn is read out. *i* word w d+2 of qn is read out. *j* the queue, qp is again selected. *k* current word is kept on the output bus since ren is high. *l* word qn w d+2 reamins on the qout bus. *m* word qn w d+2 reamins on the qout bus. *n* word w d+2 is read from qp. *o* word w d+3 for qp is read out. *p* word w d+4 for qp is read out.
68 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 53. read queue select, read operation and oe timing rclk 6715 drw61 t a *k* *l* q a w 5 t ohz t ref no read q b is empty *m* t a t a q a w 0 t a t ens t ah t as q b t qh t qs t a t a q a w 1 t ref *e* *g* *h* *f* *i* t enh t ens q a w 2 q a w 3 *d* raden t qh t qs t ah t as rdadd q a or qout t olz ren oe t oe previous data in output register *b* *a* *c* *j* t a q a w 4 notes: 1. the output ready flag, or is high therefore the previously selected queue has been read to empty. the output enable input is asynchronous, therefore the qout output bus will go to low-impedance after time t olz . the data currently in the output register will be available on the output bus (qout) after time t oe . 2. in expansion configuration the oe inputs of all devices should be connected together. this allows the output busses of all devices to be high-impedance controll ed. cycle: *a* queue a is selected for reads. no data will fall through on this cycle, the previous queue was read to empty. *b* no data will fall through on this cycle, the previous queue was read to empty. *c* previous data kept on output bus since there is no read operation. *d* previous data kept on output bus since there is no read operation. *e* word, w0 from q a is read out regardless of ren due to fwft operation. the or flag goes low indicating that word w0 is valid. *f* reads are disabled therefore word, w0 of q a remains on the output bus. *g* reads are again enabled so word w1 is read from q a . *h* word w2 is read from q a . *i* queue, q b is selected on the read port. this queue is actually empty. word, w3 is read from q a . *j* word, w4 is read from q a . *k* word w5 is read from q a . *l* output enable is taken high, this is asynchronous so the output bus goes to high-impedance after time, t ohz . *m* output ready flag, or goes high to indicate that q b is empty. data on the output port is no longer valid.
69 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 54. writing in packet mode during a queue change notes: 1. minimum allowable packet size is four (4) 36 bit words or equivalent. 2. maximum allowable packet size is the depth of the queue. 3. tsop and teop may not be a "1" in the same word. wclk q a wradd q b a q c waden din q a data q a data q a data q a data q a teop q b teop q b tsop q b data wen teop (d35) tsop (d34) q b data bc d (1) efgh i j t as t ah t as t ah t ds t dh t ds k (1) 6715 drw62
70 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 55. reading in packet mode during a queue change rclk q a rdadd q b a q c raden qout q a data q a data q a data q a reop q b rsop q b data q b data ren reop (q35) rsop (q34) q b r eop bcd efgh i j k l t as t ah t as t ah 12 12 t a t a t a t a t a t a 6715 drw63
71 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 t dh t dh t ens *a* *b* t enh first word data word t dh t dh t dh *c* t ds wclk tsop (d34) teop (d35) wen d0-d31 taeop (d33) asop (d32) 6715 drw64 t ds t ds t ds t ds data word data word last word figure 56. writing demarcation bits (packet mode) notes: 1. device is configured in packet mode. 2. ren is high. 3. if t skew4 is violated pr may take one additional rclk cycle. 4. pr will always go low on the same cycle or 1 cycle ahead of or going low, (assuming the last word of the packet is the last word in the queue). 5. in packet mode, words cannot be read from a queue until a complete packet has been written into that queue, regardless of ren .
72 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 rsop (q34) reop (q35) t pr t a t ens ren q0-q31 q1wo q1wn q1w1 aeop (q33) pr asop (q32) rclk q1wn -1 q1wn -2 q1wn -3 *a* *b* *d* *e* 6715 drw65 or t ref t a t a t a t a t a t a t a q1w2 *c* figure 57. data output (receive) packet mode of operation note: 1. in packet mode, words cannot be read from a queue until a complete packet has been written into that queue, regardless of ren . 2. the pr flag will go high on cycle *c* regardless of ren . 3. the or flag will go high (preventing further reads), when the last complete packet has been read out. if there is a partial packet (a n incomplete packet) in the queue the or flag will remain high until further writes have completed the packet.
73 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 wclk t aflz 6715 drw66 t waf *j* t ens t ah t as t qh t qs t dh t ds w d-m t waf t enh d 1 q 9 t ffhz 1 2 d 1 q 5 *e* *g* *f* *d* *h* waden t qh t qs t ah t as wradd d 1 q 5 paf (device 1) wen din high-z paf (device 2) *b* *a* *c* *i* figure 58. almost full flag timing and queue switch figure 59. almost full flag timing wclk wen paf rclk t waf ren 6715 drw67 d - (m+1) words in queue ( 2) d - m words in queue d-(m+1) words in queue t waf t enh t ens t skew2 t enh t ens t clkl t clkl cycle: *a* queue 5 of device 1 is selected on the write port. a queue within device 2 had previously been selected. the paf output of device 1 is high-impedance. *b* no write occurs, wen is high. *c* no write occurs, wen is high. *d* no write occurs, wen is high. *e* word, wd-m is written into q5 causing the paf flag to go from low to high. the flag latency is 3 wclk cycles + t waf . *f* queue 9 in device 1 is now selected for write operations. this queue is not almost full, therefore the paf flag will update after a 3 wclk + t waf latency. *g* the paf flag goes low based on the write 2 cycles earlier. *h* no write occurs, wen is high. *i* the paf flag goes high due to the queue switch to q9. note: 1. the waveform shows the paf flag operation when no queue switch occurs and a queue is selected on both the write and read ports is being written to then r ead from at the almost full boundary. 2. flag latencies: assertion: 2*wclk + t waf de-assertion: t skew2 + wclk + t waf 3. if t skew2 is violated there will be one extra wclk cycle.
74 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 figure 60. almost empty flag timing and queue switch (fwft mode) figure 61. almost empty flag timing rclk t ah t as d 1 q 15 t aelz 6715 drw68 t olz t rae t rae t aehz t a d 1 q 30 w n t a d 1 q 30 w n+1 t a d 1 q 15 w 0 t a d 1 q 15 w 1 t qh t qs high-z *f* *g* *e* *h* *i* raden t qh t qs t ah t as rdadd d 1 q 30 pae (device 1) ren qout high-z pae (device 2) high-z *b* *c* *a* *d* wclk t enh t clkh t clkl wen pae rclk t ens n+1 words in queue t rae t skew2 t rae 12 ren 6715 drw69 t ens t enh n+2 words in queue n+1 words in queue cycle: *a* queue 30 of device 1 is selected on the read port. a queue within device 2 had previously been selected. the pae flag output and the data outputs of device 1 are high-impedance. *b* no read occurs, ren is high. *c* no read occurs, ren is high. *d* no read occurs, ren is high *e* the pae flag output now switches to device 1. word, wn is read from q30 due to the fwft operation. this read operation from q30 is at the almost empty boundary, therefore pae will go low 2 rclk cycles later. *f* q15 of device 1 is selected. *g* the pae flag goes low due to the read from q30 2 rclk cycles earlier. word wn+1 is read out due to the fwft operation. *h* word, w0 is read from q15 due to the fwft operation. *i* the pae flag goes high to show that q15 is not almost empty. note: 1. the waveform here shows the pae flag operation when no queue switches are occurring and a queue selected on both the write and read ports is being written to then read from at the almost empty boundary. flag latencies: 2. assertion: 2*rclk + t rae de-assertion: t skew2 + rclk + t rae 3. if t skew2 is violated there will be one extra rclk cycle.
75 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 figure 62. pae n/ pr n - direct mode - status word selection rclk t sth t sts t qh t qs 001xxx10 6715 drw70 t qs t qh 001xxx11 device 1 status word 3 t qs t qh 001xxx00 device 1 status word 0 t sts t sth t pae device 1 status word 2 t pae device 1 status word 3 rdadd estr device 1 status word 2 pae n/ pr n t pae device 1 status word 0 raden t enh t ens t enh t ens figure 63. paf n - direct mode - status word selection wclk t qs t qh 001xxx11 device 1 status word 3 t qs t qh 001xxx10 device 1 status word 2 t sts t sth t paf t paf device 1 status word 1 device 1 status word 2 t paf device 1 status word 3 t sth t sts t qh t qs 001xxx01 wradd fstr device 1 status word 1 paf n 6715 drw71 waden t enh t ens t enh t ens notes: 1. status words can be selected on consecutive cycles. 2. on an rclk cycle that the estr is high, the raden input must be low. 3. there is a latency of 2 rclk for the pae n bus to switch. notes: 1. status words can be selected on consecutive cycles. 2. on a wclk cycle that the fstr is high, the waden input must be low. 3. there is a latency of 2 wclk for the paf n bus to switch.
76 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 wclk dn prev pae n rclk d5 sw 3 101 00011 t ah t rae d5 sw 3 d5 sw 3 t paehz t paezl xxxx xxx1 xxxx xxx1 t skew3 xxxx xxx0 d5 sw 3 t sth t pae 6715 drw72 t rae *dd* *ee* *gg* *ff* xxxx xxx0 d5 sw 3 t enh t ens wy d5 q24 wy+1 d5 q24 wy+3 d5 q24 wy+2 d5 q24 wa+1 d5 q17 t a t a t a t a t dh d3q8 wn d5q24 011 01000 d4 sw 2 100 00100 *d* *e* *f* *g* t qh t qs t ah t as t ah t as t enh t sth t sts 3 t rae d5 q24 status estr rdadd 101 11000 d5q24 t as t ah t as previous value loaded on to pae bus raden t qh t qs t sts device 5 pae *aa* *bb* d5 q17 status bus pae n previous value loaded on to pae bus ren device 5 -qn t a wa d5 q17 wen waden fstr t ah 101 11000 t as wradd d5q24 *a* *b* t qh t qs t ens device 5 pae n 1 wp+1 wp writes to previous q t dh t ds t dh *c* 2 *h* wp+2 *cc* wp+3 t ds t ds figure 64. pae n - direct mode, flag operation cycle: *a* queue 24 of device 5 is selected for write operations. word, wp is written into the previously selected queue. *aa* queue 24 of device 5 is selected for read operations. a status word from another device has control of the pae n bus. the discrete pae output of device 5 is currently in high-impedance and the pae active flag is controlled by the previously selected device. *b* word wp+1 is written into the previously selected queue. *bb* current word is kept on the output bus since ren is high. *c* word wp+2 is written into the previously selected queue. *cc* word wa+1 of d5 q17 is read due to fwft. *d* word, wn is written into the newly selected queue, q24 of d5. this write will cause the pae flag on the read port to go from low to high (not almost empty) after time, t skew3 + rclk + t rae (if t skew3 is violated one extra rclk cycle will be added). *dd* word, wy from the newly selected queue, q24 will be read out due to fwft operation. status word 4 of device 5 is selected on the pae n bus. q24 of device 5 will therefore have is pae status output on pae [0]. there is a single rclk cycle latency before the pae n bus changes to the new selection. *e* queue 8 of device 3 is selected for write operations. word wn+1 is written into q24 of d5. *ee* word, wy+1 is read from q24 of d5. *f* no writes occur. *ff* word, wy+2 is read from q24 of d5. the pae n bus changes control to d5, the pae n outputs of d5 go to low-impedance and status word 4 is placed onto the outputs. the device of the previously selected status word now places its pae n outputs into high-impedance to prevent bus contention. the discrete pae flag will go high to show that q24 of d5 is not almost empty. q24 of device 5 will have its pae status output on pae [0]. *g* status word 3 of device 4 is selected on the write port for the paf n bus. *gg* the pae n bus updates to show that q24 of d5 is almost empty based on the reading out of word, wy+1. the discrete pae flag goes low to show that q24 of d5 is almost empty based on the reading of wy+1.
77 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 rclk oe *g* w d - m + 2 t a *i* t a d0 q31 w 0 d6 q2 *f* t qh t qs d0 q31 111 00000 d7 sw 0 110 00010 *d* *e* t ah t as t sth t sts d6q2 w d-m+1 w x +1 t olz ren raden estr wradd t ah 000 11111 t as rdadd d0q31 *a* *b* 000 00011 t qh t qs t sth t sts 6715 drw73 0xxx xxxx d0sw3 *bb* *cc* *dd* *ee* *ff* t paflz 1xxx xxxx d0sw3 d0sw3 t paf t paf 0xxx xxxx 0xxx xxxx d0sw3 1xxx xxxx d0sw3 d0sw3 0xxx xxxx t pafhz high-z high-z t paflz t waf *aa* device 0 paf n bus paf n d x sw y prev. paf n d x sw y device 0 paf qout w x d0 quad3 fstr t a wclk t skew3 23 d0 q31 wen t ens t enh waden t qh t qs t ah t as t ah t as din t ds t dh t ds t dh t ds t dh word w y d0 q31 w y+1 d0 q31 w y+2 d0 q31 *c* t ah t as *h* 1 high - z *gg* t a figure 65. paf n - direct mode, flag operation cycle: *a* queue 31 of device 0 is selected for read operations. the last word in the output register is available on qout. oe was previously taken low so the output bus is in low-impedance. *aa* status word 4 of device 0 is selected for the paf n bus. the bus is currently providing status of a previously selected status word, quad y of device x. *b* no read operation. *bb* queue 31 of device 0 is selected on the write port. *c* word, wx+1 is read out from the previous queue due to the fwft effect. *cc* paf n continues to show status of quad4 d0. the paf n bus is updated with the status word selected on the previous cycle, d0 quad 4. paf [7] is low showing the status of queue 31. the paf n outputs of the device previously selected on the paf n bus go to high-impedance. *d* a new status word, quad 0 of device 7 is selected for the paf n bus. word, wd-m+1 is read from q31 d0 due to the fwft operation. this read is at the paf n boundary of queue d0 q31. this read will cause the paf [7] output to go from low to high (almost full to not almost full), after a delay t skew3 + wclk + tpaf. if t skew3 is violated add an extra wclk cycle. *dd* no write operation. *e* no read operations occur, ren is high. *ee* paf [7] goes high to show that d0 q31 is not almost empty due to the read on cycle *c*. the active queue paf flag of device 0 goes from high-impedance to low-impedance. word, wy is written into d0 q31. *f* queue 2 of device 6 is selected for read operations. *ff* word, wy+1 is written into d0 q31. *g* word, wd-m+2 is read out due to fwft operation. *gg* paf [7] and the discrete paf flag go low to show the write on cycle *dd* causes q31 of d0 to again go almost full. word, wy+2 is written into d0 q31. *h* no read operation. *i* word, w0 is read from q0 of d6, selected on cycle *f*, due to fwft.
78 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 wclk 6715 drw74 t fsync t fsync fsync 0 (master) fxo 0 / fxi 1 t fxo t fxo t fsync t fsync fsync 1 (slave) fxo 1 / fxi 2 t fxo t fxo t fsync t fsync fsync 2 (slave) fxo 2 / fxi 0 t fxo t fxo paf n t paf t paf t paf t paf t paf t paf t paf t paf t paf t paf t paf t paf t paf t paf t fsync t fsync d0sw1 d0sw2 d0sw3 d0sw4 d1sw1 d1sw2 d1sw3 d1sw4 d2sw1 d2sw2 d2sw3 d2sw4 d0sw1 d0sw2 figure 66. paf n bus - polled mode note: 1. this diagram is based on 3 devices connected in expansion configuration.
79 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 wradd waden wclk wen fstr paf n fsync ff paf sclk rclk ren estr pae n esync ef pae rdadd raden so fxo exo si fxi exi wradd waden wclk wen fstr paf n fsync ff paf sclk rclk ren estr pae n esync ef pae rdadd raden so fxo exo si fxi exi wradd waden wclk wen fstr paf n fsync ff paf sclk rclk ren estr pae n esync ef pae rdadd raden seno fxo exo q 0 -q 35 si fxi exi data bus write clock write enable write queue select full strobe programmable almost full write address full sync1 full flag almost full flag serial clock output data bus read clock read enable read queue select empty strobe programmable almost empty read address empty sync 1 empty/output ready flag almost empty flag serial programming data input device 1 device 2 device n (master, id = ?000') full sync2 empty sync 2 full sync n empty sync n seno seni done 6715 drw75 d 0 -d 35 q 0 -q 35 d 0 -d 35 d 0 -d 35 q 0 -q 35 seni pr packet reads pr pr serial enable seno seni figure 67. expansion using id codes notes: 1. if devices are configured for direct operation of the paf n/ pae n flag busses the fxi/exi of the master device should be tied low. all other devices tied high. the fxo/exo outputs are dnc (do not connect). 2. q outputs must not be mixed between devices, i.e. q0 of device 1 must connect to q0 of device 2, etc.
80 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 wradd waden wclk wen fstr paf n fsync ff paf sclk rclk ren estr pae n esync ef pae rdadd raden so fxo exo si fxi exi wradd waden wclk wen fstr paf n fsync ff paf sclk rclk ren estr pae n esync ef pae rdadd raden so fxo exo si fxi exi wradd waden wclk wen fstr paf n fsync ff paf sclk rclk ren estr pae n esync ef pae rdadd raden seno fxo exo q 0 -q 35 si fxi exi data bus write clock write enable write queue select full strobe programmable almost full write address full sync1 full flag almost full flag serial clock output data bus read clock read enable read queue select empty strobe programmable almost empty read address empty sync 1 empty/output ready flag almost empty flag serial programming data input device 1 device 2 device 0 full sync2 empty sync 2 full sync n empty sync n seno seni done 6715 drw75a d 0 -d 35 q 0 -q 35 d 0 -d 35 d 0 -d 35 q 0 -q 35 seni pr packet reads pr pr serial enable seno seni wcs wcs1 wcs wcs2 wcs wcs0 rcs rcs1 rcs rcs2 rcs rcs0 figure 68. expansion using wcs / rcs notes: 1. if devices are configured for direct operation of the paf n/ pae n flag busses the fxi/exi of the master device should be tied low. all other devices tied high. the fxo/exo outputs are dnc (do not connect). 2. q outputs must not be mixed between devices, i.e. q0 of device 1 must connect to q0 of device 2, etc.
81 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 rclk ren qout1 ae bcd fghij q1_a q1_b q1_c q2_a q1_d q2_b q3_c q1_e q1_a q1_b q1_c q1_d q1_e q2_a q2_b q3_c rcs1 rcs2 qout2 qout3 rcs3 q_bus t enh t ens t enh t ens t ens t enh t ens t ens t enh t ens t enh t ens t enh t ens t enh 6715 drwa figure 69. expansion connection read chip select ( rcs ) note: 1. rcs signals are mutually exclusive, (i.e.. only one rcs signal can be asserted (low) at a time). ae bcd fghij device 2 device 1 device 1 device 2 device 1 device 3 device 1 no write no write wclk wen wcs1 wcs2 din wcs3 6715 drwb t enh t ens t enh t ds t enh t ens t enh t ens t ens t ens t enh t enh t ens t ens t enh t dh t ens figure 70. expansion connection write chip select ( wcs )
82 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 t a p tap cont- roller mux deviceid reg. boundary scan reg. bypass reg. clkdr, shiftdr updatedr tdo tdi tms tclk trst clklr, shiftlr updatelr instruction register instruction decode control signals 6715 drw76 jtag interface five additional pins (tdi, tdo, tms, tck and trst ) are provided to support the jtag boundary scan interface. the idt72p51539/72p51549/ 72p51559/72p51569 incorporates the necessary tap controller and modified pad cells to implement the jtag facility. note that idt provides appropriate boundary scan description language program files for these devices. the standard jtag interface consists of four basic elements: ? ? ? ? ? test access port (tap) ? ? ? ? ? tap controller ? ? ? ? ? instruction register (ir) ? ? ? ? ? data register port (dr) the following sections provide a brief description of each element. for a complete description refer to the ieee standard test access port specification (ieee std. 1149.1-1990). the figure below shows the standard boundary-scan architecture figure 71. boundary scan architecture test access port (tap) the tap interface is a general-purpose port that provides access to the internal of the processor. it consists of four input ports (tclk, tms, tdi, trst ) and one output port (tdo). the tap controller the tap controller is a synchronous finite state machine that responds to tms and tclk signals to generate clock and control signals to the instruction and data registers for capture and update of data.
83 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 test-logic reset run-test/ idle 1 0 0 select- dr-scan select- ir-scan 1 1 1 capture-ir 0 capture-dr 0 0 exit1-dr 1 pause-dr 0 exit2-dr 1 update-dr 1 exit1-ir 1 exit2-ir 1 update-ir 1 1 0 1 1 1 6715 drw77 0 shift-dr 0 0 0 shift-ir 0 0 pause-ir 0 1 input = tms 0 0 1 figure 72. tap controller state diagram notes: 1. five consecutive tck cycles with tms = 1 will reset the tap. 2. tap controller does not automatically reset upon power-up. the user must provide a reset to the tap controller (either by trst or tms). 3. tap controller must be reset before normal queue operations can begin. refer to the ieee standard test access port specification (ieee std. 1149.1) for the full state diagram. all state transitions within the tap controller occur at the rising edge of the tclk pulse. the tms signal level (0 or 1) determines the state progression that occurs on each tclk rising edge. the tap controller takes precedence over the queue and must be reset after power up of the device. see trst description for more details on tap controller reset. test-logic-reset all test logic is disabled in this controller state enabling the normal operation of the ic. the tap controller state machine is designed in such a way that, no matter what the initial state of the controller is, the test- logic-reset state can be entered by holding tms at high and pulsing tck five times. this is the reason why the test reset ( trst ) pin is optional. run-test-idle in this controller state, the test logic in the ic is active only if certain instructions are present. for example, if an instruction activates the self test, then it will be executed when the controller enters this state. the test logic in the ic is idles otherwise. select-dr-scan this is a controller state where the decision to enter the data path or the select-ir-scan state is made. select-ir-scan this is a controller state where the decision to enter the instruction path is made. the controller can return to the test-logic-reset state other wise. capture-ir in this controller state, the shift register bank in the instruction register parallel loads a pattern of fixed values on the rising edge of tck. the last two significant bits are always required to be ?01?. shift-ir in this controller state, the instruction register gets connected between tdi and tdo, and the captured pattern gets shifted on each rising edge of tck. the instruction available on the tdi pin is also shifted in to the instruction register. exit1-ir this is a controller state where a decision to enter either the pause- ir state or update-ir state is made. pause-ir this state is provided in order to allow the shifting of instruction register to be temporarily halted. exit2-dr this is a controller state where a decision to enter either the shift- ir state or update-ir state is made. update-ir in this controller state, the instruction in the instruction register is latched in to the latch bank of the instruction register on every falling edge of tck. this instruction also becomes the current instruction once it is latched. capture-dr in this controller state, the data is parallel loaded in to the data registers selected by the current instruction on the rising edge of tck. shift-dr, exit1-dr, pause-dr, exit2-dr and update-dr these controller states are similar to the shift-ir, exit1-ir, pause-ir, exit2-ir and update-ir states in the instruction path.
84 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 the instruction register the instruction register allows an instruction to be shifted in serially into the processor at the rising edge of tclk. the instruction is used to select the test to be performed, or the test data register to be accessed, or both. the instruction shifted into the register is latched at the completion of the shifting process when the tap controller is at update- ir state. the instruction register must contain 4 bit instruction register-based cells which can hold instruction data. these mandatory cells are located nearest the serial outputs they are the least significant bits. test data register the test data register contains three test data registers: the bypass, the boundary scan register and device id register. these registers are connected in parallel between a common serial input and a common serial data output. the following sections provide a brief description of each element. for a complete description, refer to the ieee standard test access port specification (ieee std. 1149.1-1990). test bypass register the register is used to allow test data to flow through the device from tdi to tdo. it contains a single stage shift register for a minimum length in serial path. when the bypass register is selected by an instruction, the shift register stage is set to a logic zero on the rising edge of tclk when the tap controller is in the capture-dr state. the operation of the bypass register should not have any effect on the operation of the device in response to the bypass instruction. the boundary-scan register the boundary scan register allows serial data tdi be loaded in to or read out of the processor input/output ports. the boundary scan register is a part of the ieee 1149.1-1990 standard jtag implementation. the device identification register the device identification register is a read only 32-bit register used to specify the manufacturer, part number and version of the processor to be determined through the tap in response to the idcode instruction. idt jedec id number is 0xb3. this translates to 0x33 when the parity is dropped in the 11-bit manufacturer id field. for the idt72p51539/72p51549/72p51559/72p51569, the part number field contains the following values: device part# field (hex) idt72p51539 0478 IDT72P51549 0479 idt72p51559 047d idt72p51569 047e jtag device identification register 31(msb) 28 27 12 11 1 0(lsb) version (4 bits) part number (16-bit) manufacturer id (11-bit) 0x0 0x33 1 jtag instruction register the instruction register allows instruction to be serially input into the device when the tap controller is in the shift-ir state. the instruction is decoded to perform the following: ? ? ? ? ? select test data registers that may operate while the instruction is current. the other test data registers should not interfere with chip operation and the selected data register. ? ? ? ? ? define the serial test data register path that is used to shift data between tdi and tdo during data register scanning. the instruction register is a 4 bit field (i.e. ir3, ir2, ir1, ir0) to decode 16 different possible instructions. instructions are decoded as follows. jtag instruction register decoding hex instruction function value 00 extest select boundary scan register 01 sample/preload select boundary scan register 02 idcode select chip identification data register 03 high-impedance jtag 0f bypass select bypass register the following sections provide a brief description of each instruction. for a complete description refer to the ieee standard test access port specification (ieee std. 1149.1-1990). extest the required extest instruction places the ic into an external boundary- test mode and selects the boundary-scan register to be connected between tdi and tdo. during this instruction, the boundary-scan register is accessed to drive test data off-chip via the boundary outputs and receive test data off-chip via the boundary inputs. as such, the extest instruction is the workhorse of ieee. std 1149.1, providing for probe-less testing of solder-joint opens/shorts and of logic cluster function. idcode the optional idcode instruction allows the ic to remain in its functional mode and selects the optional device identification register to be connected between tdi and tdo. the device identification register is a 32-bit shift register containing information regarding the ic manufacturer, device type, and version code. accessing the device identification register does not interfere with the operation of the ic. also, access to the device identification register should be immediately available, via a tap data-scan operation, after power-up of the ic or after the tap has been reset using the optional trst pin or by otherwise moving to the test-logic-reset state. sample/preload the required sample/preload instruction allows the ic to remain in a normal functional mode and selects the boundary-scan register to be connected between tdi and tdo. during this instruction, the boundary-scan register can be accessed via a date scan operation, to take a sample of the functional data entering and leaving the ic. this instruction is also used to preload test data into the boundary-scan register before loading an extest instruction.
85 idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 commercial and industrial temperature ranges september 27, 2004 high-impedance the optional high-impedance instruction sets all outputs (including two-state as well as three-state types) of an ic to a disabled (high-impedance) state and selects the one-bit bypass register to be connected between tdi and tdo. during this instruction, data can be shifted through the bypass register from tdi to tdo without affecting the condition of the ic outputs. bypass the required bypass instruction allows the ic to remain in a normal functional mode and selects the one-bit bypass register to be connected between tdi and tdo. the bypass instruction allows serial data to be transferred through the ic from tdi to tdo without affecting the operation of the ic.
86 commercial and industrial temperature ranges idt72p51539/72p51549/72p51559/72p51569 1.8v, mq flow-control devices (32 queues) 36 bit wide configuration 589, 824, 1,179,648, 2,359,296, and 4,718,592 september 27, 2004 t 4 t 3 tdo tdo tdi/ tms tck trst t do notes to diagram: t1 = t tcklow t2 = t tckhigh t3 = t tckfall t4 = t tckrise t5 = trst (reset pulse width) t6 = trsr (reset recovery) 6715 drw78 t 5 t 6 t 1 t 2 t tck t dh t ds figure 73. standard jtag timing system interface parameters parameter symbol test conditions min. max. units jtag clock input period t tck - 100 - ns jtag clock high t tckhigh -40-ns jtag clock low t tcklow -40-ns jtag clock rise time t tckrise --5 (1) ns jtag clock fall time t tckfall --5 (1) ns jtag reset t rst -50-ns jtag reset recovery t rsr -50-ns jtag ac electrical characteristics (v dd = 2.5v 5%; tcase = 0 c to +85 c) idt72p51539 IDT72P51549 idt72p51559 idt72p51569 parameter symbol test conditions min. max. units data output t do (1) -20ns data output hold t doh (1) 0-ns data input t ds t rise=3ns 10 - ns t dh t fall=3ns 10 - note: 1. 50pf loading on external output signals. note: 1. guaranteed by design.
87 corporate headquarters for sales: for tech support: 2975 stender way 800-345-7015 or 408-727-6116 408-330-1533 santa clara, ca 95054 fax: 408-492-8674 email: flow-controlhelp@idt.com www.idt.com plastic ball grid array (pbga, bb256-1) commercial (0 c to +70 c) industrial (-40 c to +85 c) low power 6715 drw79 commercial only commercial and industrial l idt xxxxx device type x power xx speed x package x process / temperature range blank i (1) 72p51539 589,824 bits ? 1.8v multi-queue flow-control device 72p51549 1,179,648 bits ? 1.8v multi-queue flow-control device 72p51559 2,359,296 bits ? 1.8v multi-queue flow-control device 72p51569 4,718,592 bits ? 1.8v multi-queue flow-control device clock cycle time (t clk ) speed in nanoseconds bb 5 6 ordering information note: 1. industrial temperature range product for the 6ns is available as a standard device. all other speed grades available by spec ial order.


▲Up To Search▲   

 
Price & Availability of IDT72P51549

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X